約 1,438,146 件
https://w.atwiki.jp/matlab/pages/22.html
JavaEE5概要 <link_pdfプラグインはご利用いただけなくなりました。> JavaEE5概要
https://w.atwiki.jp/ce00582/pages/1252.html
import javax.swing.*; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.geom.*; import java.awt.Color; import java.awt.BasicStroke; public class tax32 extends JPanel{ public static void main(String[] args){ JFrame frame = new JFrame(); tax32 app = new tax32(); frame.getContentPane().add(app); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setBounds(0, 0, 500, 500); frame.setTitle("Mirrlees(1971)の追試"); frame.setVisible(true); } public void paintComponent(Graphics g){ int n; double data[]=new double[201]; Graphics2D g2 = (Graphics2D)g; g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); data=tax(); for (n=1;n 99;n++){ g2.draw(new Line2D.Double(500*data[n], 500-500*data[n+100], 500*data[n+1],500-500*data[n+101])); } } static double[] tax(){ double th[]= new double[101]; double c[]= new double[101]; double y[]= new double[101]; int opc[]= new int[101]; int opy[]= new int[101]; int opq[]= new int[101]; double u[][][]=new double[101][3][3]; double ww[][][]=new double[100][3][3]; double v[][][][]=new double[100][3][3][21]; int gotoc[][][][]=new int[100][3][3][21]; int gotoy[][][][]=new int[100][3][3][21]; int gotoq[][][][]=new int[100][3][3][21]; double endv[][]=new double[3][3]; int endc[][]=new int[3][3]; int endy[][]=new int[3][3]; int endq[][]=new int[3][3]; int s; double ls; double w; double cs; double ys; double b1; double b2; double wel; double maxwel; int t; int n; int n1; int n2; int pp; int q; int j; double c1; double l1; double h; double u1; int ns1; int ns2; int qx; int nx1; int nx2; double vs; double v1; double maxv; double dc; double dy; int e; double data1[]=new double[101]; double data2[]=new double[201]; double data3[]=new double[201]; double maxy; data1=ex1(); data2=ex2(); for (s=1;s 101;s++){ c[s]=data2[s]; y[s]=data2[s+100]; } for (s=1;s 101;s++){ th[s]=data1[s]; } h=0.001; t=0; while(t 1000){ for (s=1;s 101;s++){ for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ c1=c[s]+n1*h; l1=(y[s]+n2*h)/th[s]; u1=ux(c1,l1); u[s][n1+1][n2+1]=u1; } } } for (s=1;s 100;s++){ for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ c1=c[s]+n1*h; l1=(y[s]+n2*h)/th[s+1]; u1=ux(c1,l1); ww[s][n1+1][n2+1]=u1; } } } for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ for (q=-10;q 11;q++){ v[1][n1+1][n2+1][q+10]=-999; } } } for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ q=n2-n1; v[1][n1+1][n2+1][q+10]=u[1][n1+1][n2+1]; } } for (s=2;s 100;s++){ for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ for (q=-10;q 11;q++){ u1=u[s][n1+1][n2+1]; qx=q-n1+n2; pp=0; if (qx 10)pp=100; if (qx -10)pp=100; if (pp 50)qx=0; vs=-999; ns1=0; ns2=0; for (nx1=-1;nx1 2;nx1++){ for (nx2=-1;nx2 2;nx2++){ v1=u1+v[s-1][nx1+1][nx2+1][qx+10]; if (ww[s-1][nx1+1][nx2+1] u1)v1=-999; if (v1 vs)ns1=nx1; if (v1 vs)ns2=nx2; if (v1 vs)vs=v1; } } if (pp 50)vs=-999; gotoc[s][n1+1][n2+1][q+10]=ns1; gotoy[s][n1+1][n2+1][q+10]=ns2; gotoq[s][n1+1][n2+1][q+10]=qx; v[s][n1+1][n2+1][q+10]=vs; } } } } for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ u1=u[100][n1+1][n2+1]; qx=n2-n1; vs=-999; ns1=0; ns2=0; for (nx1=-1;nx1 2;nx1++){ for (nx2=-1;nx2 2;nx2++){ v1=u1+v[99][nx1+1][nx2+1][qx+10]; if (ww[99][nx1+1][nx2+1] u1){ v1=-999; } if (v1 vs){ ns1=nx1; } if (v1 vs){ ns2=nx2; } if (v1 vs){ vs=v1; } } } endc[n1+1][n2+1]=ns1; endy[n1+1][n2+1]=ns2; endq[n1+1][n2+1]=qx; endv[n1+1][n2+1]=vs; } } maxv=-999; ns1=0; ns2=0; for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ if (endv[n1+1][n2+1] maxv){ ns1=n1; } if (endv[n1+1][n2+1] maxv){ ns2=n2; } if (endv[n1+1][n2+1] maxv){ maxv=endv[n1+1][n2+1]; } } } opc[100]=ns1; opy[100]=ns2; opc[99]=endc[opc[100]+1][opy[100]+1]; opy[99]=endy[opc[100]+1][opy[100]+1]; opq[99]=endq[opc[100]+1][opy[100]+1]; for (j=1;j 99;j++){ s=99-j; opc[s]=gotoc[s+1][opc[s+1]+1][opy[s+1]+1][opq[s+1]+10]; opy[s]=gotoy[s+1][opc[s+1]+1][opy[s+1]+1][opq[s+1]+10]; opq[s]=gotoq[s+1][opc[s+1]+1][opy[s+1]+1][opq[s+1]+10]; } e=0; for (s=1;s 101;s++){ e=e+opc[s]*opc[s]+opy[s]*opy[s]; } for (s=1;s 101;s++){ c[s]=c[s]+opc[s]*h; y[s]=y[s]+opy[s]*h; } System.out.println(e); if (e 2){ h=h/2; } if (h 0.00001){ t=10000; } t=t+1; } maxy=-999; for (s=1;s 101;s++){ if (y[s] maxy)maxy=y[s]; } for (s=1;s 99;s++){ dc=c[s+1]-c[s]; dy=y[s+1]-y[s]; data3[s]=0; if (dy 0)data3[s]=1-dc/dy; } for (s=1;s 100;s++){ data3[s+100]=y[s]/maxy; } return data3; } static double[] ex2(){ double th[]= new double[101]; int s; double tl; double tr; double ls; double w; double cs; double ys; double b1; double b2; double tr1; double tr2; double tr3; double wel; double maxwel; double maxtl; double maxtr; int t; int n; double h; double c[]= new double[101]; double y[]= new double[101]; double data1[]=new double[101]; double data[]=new double[201]; int n1; int n2; data1=ex1(); for (s=1;s 101;s++){ th[s]=data1[s]; } maxwel=-999; maxtr=0; maxtl=0; for (n=20;n 45;n++){ tl=0.01*n; tr1=0.01; tr2=0.02; tr=tr1; b1=bud(tl,tr1,th); t=0; while (t 100) { b2=bud(tl,tr2,th); tr3=tr2-b2*(tr2-tr1)/(b2-b1); tr1=tr2; tr2=tr3; b1=b2; if (b2*b2 0.00001)t=1000; t=t+1; } tr=tr2; wel=seekwel(tl,tr,th); if (wel maxwel)maxtl=tl; if (wel maxwel)maxtr=tr; if (wel maxwel)maxwel=wel; } tl=maxtl; tr=maxtr; for (s=1;s 101;s++){ w=(1-tl)*th[s]; ls=(w-tr)/(2*w); if (ls 0)ls=0; c[s]=w*ls+tr; y[s]=th[s]*ls; } for (s=1;s 101;s++){ data[s]=c[s]; data[s+100]=y[s]; } return data; } static double ux(double c1,double l1){ double u1; double c3; double l3; int pp; pp=0; c3=c1; l3=l1; if (c3 0)pp=100; if (l3 0)pp=100; if (l3 1)pp=100; if (pp 50)c3=0.5; if (pp 50)l3=0.5; u1=Math.log(c3)+Math.log(1-l3); if (pp 50)u1=-999; return u1; } static double bud(double tl,double tr,double th[]){ double bx; int s; double w; double y1; double c1; double l1; bx=0; for (s=1;s 101;s++){ w=(1-tl)*th[s]; l1=(w-tr)/(2*w); if (l1 0)l1=0; y1=th[s]*l1; c1=w*l1+tr; bx=bx+y1-c1; } return bx; } static double seekwel(double tl,double tr,double th[]){ double sw; int s; double w; double l1; double c1; sw=0; for (s=1;s 101;s++){ w=(1-tl)*th[s]; l1=(w-tr)/(2*w); if (l1 0)l1=0; c1=w*l1+tr; sw=sw+ux(c1,l1); } return sw; } static double[] ex1(){ double p; double mu; double sig; double yy; double th[]= new double[101]; int s; mu=0; sig=0.39; for (s=1;s 101;s++){ p=0.01*s-0.005; yy=seeky(p,mu,sig); th[s]=Math.exp(yy); } return th; } static double f(double x,double mu,double sig){ double pi,x1,x2,x3,fx; pi = 3.1415; x1=-Math.pow(x - mu,2) / (2*Math.pow(sig,2)); x2=Math.exp(x1); x3=sig*Math.pow(2*pi,0.5); fx=x2/x3; return fx; } static double g(double y,double mu, double sig){ double gx,h,x; int n,t; gx=0; h=0.001; t=(int)(y/h); for (n=-2000;n t;n++){ x=n*h; gx=gx+f(x,mu,sig)*h; } return gx; } static double seeky(double p,double mu,double sig){ double g1,g2,y1,y2,y3; int t; y1=0.4; y2=-0.2; g1=g(y1,mu,sig); t=0; while(t 100){ g2=g(y2,mu,sig); y3=y2+(p-g2)*(y2-y1)/(g2-g1); y1=y2; y2=y3; g1=g2; if (Math.pow(p-g2,2) 0.0001)t=1000; t=t+1; } return y2; } }
https://w.atwiki.jp/ce00582/pages/1251.html
import javax.swing.*; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.geom.*; import java.awt.Color; import java.awt.BasicStroke; public class tax33 extends JPanel{ public static void main(String[] args){ JFrame frame = new JFrame(); tax33 app = new tax33(); frame.getContentPane().add(app); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setBounds(0, 0, 500, 500); frame.setTitle("Mirrlees(1971)の追試"); frame.setVisible(true); } public void paintComponent(Graphics g){ int n; double data[]=new double[201]; Graphics2D g2 = (Graphics2D)g; g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); data=tax(); for (n=1;n 100;n++){ g2.draw(new Line2D.Double(5*n, 500-500*data[n], 5*n+5,500-500*data[n+1])); g2.draw(new Line2D.Double(5*n, 500-500*data[n+100], 5*n+5,500-500*data[n+101])); } } static double[] tax(){ double th[]= new double[101]; double c[]= new double[101]; double y[]= new double[101]; int opc[]= new int[101]; int opy[]= new int[101]; int opq[]= new int[101]; double u[][][]=new double[101][3][3]; double ww[][][]=new double[100][3][3]; double v[][][][]=new double[100][3][3][21]; int gotoc[][][][]=new int[100][3][3][21]; int gotoy[][][][]=new int[100][3][3][21]; int gotoq[][][][]=new int[100][3][3][21]; double endv[][]=new double[3][3]; int endc[][]=new int[3][3]; int endy[][]=new int[3][3]; int endq[][]=new int[3][3]; int s; double ls; double w; double cs; double ys; double b1; double b2; double wel; double maxwel; int t; int n; int n1; int n2; int pp; int q; int j; double c1; double l1; double h; double u1; int ns1; int ns2; int qx; int nx1; int nx2; double vs; double v1; double maxv; double dc; double dy; int e; double data1[]=new double[101]; double data2[]=new double[201]; double data3[]=new double[201]; double maxy; data1=ex1(); data2=ex2(); for (s=1;s 101;s++){ c[s]=data2[s]; y[s]=data2[s+100]; } for (s=1;s 101;s++){ th[s]=data1[s]; } h=0.001; t=0; while(t 1000){ for (s=1;s 101;s++){ for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ c1=c[s]+n1*h; l1=(y[s]+n2*h)/th[s]; u1=ux(c1,l1); u[s][n1+1][n2+1]=u1; } } } for (s=1;s 100;s++){ for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ c1=c[s]+n1*h; l1=(y[s]+n2*h)/th[s+1]; u1=ux(c1,l1); ww[s][n1+1][n2+1]=u1; } } } for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ for (q=-10;q 11;q++){ v[1][n1+1][n2+1][q+10]=-999; } } } for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ q=n2-n1; v[1][n1+1][n2+1][q+10]=u[1][n1+1][n2+1]; } } for (s=2;s 100;s++){ for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ for (q=-10;q 11;q++){ u1=u[s][n1+1][n2+1]; qx=q-n1+n2; pp=0; if (qx 10)pp=100; if (qx -10)pp=100; if (pp 50)qx=0; vs=-999; ns1=0; ns2=0; for (nx1=-1;nx1 2;nx1++){ for (nx2=-1;nx2 2;nx2++){ v1=u1+v[s-1][nx1+1][nx2+1][qx+10]; if (ww[s-1][nx1+1][nx2+1] u1)v1=-999; if (v1 vs)ns1=nx1; if (v1 vs)ns2=nx2; if (v1 vs)vs=v1; } } if (pp 50)vs=-999; gotoc[s][n1+1][n2+1][q+10]=ns1; gotoy[s][n1+1][n2+1][q+10]=ns2; gotoq[s][n1+1][n2+1][q+10]=qx; v[s][n1+1][n2+1][q+10]=vs; } } } } for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ u1=u[100][n1+1][n2+1]; qx=n2-n1; vs=-999; ns1=0; ns2=0; for (nx1=-1;nx1 2;nx1++){ for (nx2=-1;nx2 2;nx2++){ v1=u1+v[99][nx1+1][nx2+1][qx+10]; if (ww[99][nx1+1][nx2+1] u1){ v1=-999; } if (v1 vs){ ns1=nx1; } if (v1 vs){ ns2=nx2; } if (v1 vs){ vs=v1; } } } endc[n1+1][n2+1]=ns1; endy[n1+1][n2+1]=ns2; endq[n1+1][n2+1]=qx; endv[n1+1][n2+1]=vs; } } maxv=-999; ns1=0; ns2=0; for (n1=-1;n1 2;n1++){ for (n2=-1;n2 2;n2++){ if (endv[n1+1][n2+1] maxv){ ns1=n1; } if (endv[n1+1][n2+1] maxv){ ns2=n2; } if (endv[n1+1][n2+1] maxv){ maxv=endv[n1+1][n2+1]; } } } opc[100]=ns1; opy[100]=ns2; opc[99]=endc[opc[100]+1][opy[100]+1]; opy[99]=endy[opc[100]+1][opy[100]+1]; opq[99]=endq[opc[100]+1][opy[100]+1]; for (j=1;j 99;j++){ s=99-j; opc[s]=gotoc[s+1][opc[s+1]+1][opy[s+1]+1][opq[s+1]+10]; opy[s]=gotoy[s+1][opc[s+1]+1][opy[s+1]+1][opq[s+1]+10]; opq[s]=gotoq[s+1][opc[s+1]+1][opy[s+1]+1][opq[s+1]+10]; } e=0; for (s=1;s 101;s++){ e=e+opc[s]*opc[s]+opy[s]*opy[s]; } for (s=1;s 101;s++){ c[s]=c[s]+opc[s]*h; y[s]=y[s]+opy[s]*h; } System.out.println(e); if (e 2){ h=h/2; } if (h 0.00001){ t=10000; } t=t+1; } maxy=-999; for (s=1;s 101;s++){ if (y[s] maxy)maxy=y[s]; } for (s=1;s 101;s++){ data3[s]=c[s]/maxy; data3[s+100]=y[s]/maxy; } return data3; } static double[] ex2(){ double th[]= new double[101]; int s; double tl; double tr; double ls; double w; double cs; double ys; double b1; double b2; double tr1; double tr2; double tr3; double wel; double maxwel; double maxtl; double maxtr; int t; int n; double h; double c[]= new double[101]; double y[]= new double[101]; double data1[]=new double[101]; double data[]=new double[201]; int n1; int n2; data1=ex1(); for (s=1;s 101;s++){ th[s]=data1[s]; } maxwel=-999; maxtr=0; maxtl=0; for (n=20;n 45;n++){ tl=0.01*n; tr1=0.01; tr2=0.02; tr=tr1; b1=bud(tl,tr1,th); t=0; while (t 100) { b2=bud(tl,tr2,th); tr3=tr2-b2*(tr2-tr1)/(b2-b1); tr1=tr2; tr2=tr3; b1=b2; if (b2*b2 0.00001)t=1000; t=t+1; } tr=tr2; wel=seekwel(tl,tr,th); if (wel maxwel)maxtl=tl; if (wel maxwel)maxtr=tr; if (wel maxwel)maxwel=wel; } tl=maxtl; tr=maxtr; for (s=1;s 101;s++){ w=(1-tl)*th[s]; ls=(w-tr)/(2*w); if (ls 0)ls=0; c[s]=w*ls+tr; y[s]=th[s]*ls; } for (s=1;s 101;s++){ data[s]=c[s]; data[s+100]=y[s]; } return data; } static double ux(double c1,double l1){ double u1; double c3; double l3; int pp; pp=0; c3=c1; l3=l1; if (c3 0)pp=100; if (l3 0)pp=100; if (l3 1)pp=100; if (pp 50)c3=0.5; if (pp 50)l3=0.5; u1=Math.log(c3)+Math.log(1-l3); if (pp 50)u1=-999; return u1; } static double bud(double tl,double tr,double th[]){ double bx; int s; double w; double y1; double c1; double l1; bx=0; for (s=1;s 101;s++){ w=(1-tl)*th[s]; l1=(w-tr)/(2*w); if (l1 0)l1=0; y1=th[s]*l1; c1=w*l1+tr; bx=bx+y1-c1; } return bx; } static double seekwel(double tl,double tr,double th[]){ double sw; int s; double w; double l1; double c1; sw=0; for (s=1;s 101;s++){ w=(1-tl)*th[s]; l1=(w-tr)/(2*w); if (l1 0)l1=0; c1=w*l1+tr; sw=sw+ux(c1,l1); } return sw; } static double[] ex1(){ double p; double mu; double sig; double yy; double th[]= new double[101]; int s; mu=0; sig=0.39; for (s=1;s 101;s++){ p=0.01*s-0.005; yy=seeky(p,mu,sig); th[s]=Math.exp(yy); } return th; } static double f(double x,double mu,double sig){ double pi,x1,x2,x3,fx; pi = 3.1415; x1=-Math.pow(x - mu,2) / (2*Math.pow(sig,2)); x2=Math.exp(x1); x3=sig*Math.pow(2*pi,0.5); fx=x2/x3; return fx; } static double g(double y,double mu, double sig){ double gx,h,x; int n,t; gx=0; h=0.001; t=(int)(y/h); for (n=-2000;n t;n++){ x=n*h; gx=gx+f(x,mu,sig)*h; } return gx; } static double seeky(double p,double mu,double sig){ double g1,g2,y1,y2,y3; int t; y1=0.4; y2=-0.2; g1=g(y1,mu,sig); t=0; while(t 100){ g2=g(y2,mu,sig); y3=y2+(p-g2)*(y2-y1)/(g2-g1); y1=y2; y2=y3; g1=g2; if (Math.pow(p-g2,2) 0.0001)t=1000; t=t+1; } return y2; } }
https://w.atwiki.jp/ce00582/pages/5280.html
import java.net.*; import java.awt.*; import java.awt.event.*; class pro extends Frame{ Image img; public static void main(String[] args) { pro f = new pro(); f.setSize(700,700); f.setBackground(Color.yellow) ; f.setVisible(true); f.addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}}); } pro(){ try { URL url = new URL("http //livedoor.blogimg.jp/rindab/imgs/d/f/df3dd1ee.jpg"); img = Toolkit.getDefaultToolkit().getImage(url); } catch (MalformedURLException ex) {ex.printStackTrace();} } public void paint( Graphics g ) { g.drawImage(img,100,100,500,500,this); } }
https://w.atwiki.jp/jdbc_atm/pages/18.html
珈琲はいかがですか? プログラムが理解できなかった人のための、プログラミング再入門です。 講義だけでは学べない、役に立つ情報満載(にする予定)です。 基本的にJavaを中心に解説していきます。珈琲ドゾー( ・ω・)つ旦 プログラミングでやってはいけない禁じ手 コーディングをするにあたっての方針 お役立ちリンク 名前 コメント
https://w.atwiki.jp/ce00582/pages/3215.html
import java.io.*; import java.awt.*; import java.awt.Graphics; import java.awt.event.*; import java.net.URL; import javax.sound.sampled.*; class game0107 extends Frame implements Runnable{ Frame f; Thread th; int ballx,bally,dx,dy; public static void main(String[] args){ Frame f=new game0107(); f.setSize(700,700); f.setBackground(Color.yellow); f.show(); } game0107(){ addWindowListener(new stopwin()); ballx=100; bally=300; dx=10; dy=7; th=new Thread(this); th.start(); } class stopwin extends WindowAdapter{ public void windowClosing(WindowEvent we){System.exit(0);} } public void paint( Graphics g ) { g.setColor(Color.red); g.drawRect(ballx,bally,20,20); } public void update(Graphics g) { paint(g); } public void run() { int i; for (i=1;i 500;i++){ ballx=ballx+dx; bally=bally+dy; if (ballx 500)dx=-dx; if (ballx 0)dx=-dx; if (bally 500)dy=-dy; if (bally 0)dy=-dy; if (ballx 490){ try {URL url = this.getClass().getClassLoader().getResource("sound.wav"); AudioInputStream audioIn = AudioSystem.getAudioInputStream(url); Clip clip = AudioSystem.getClip(); clip.open(audioIn); clip.start();} catch (UnsupportedAudioFileException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} catch (LineUnavailableException e) {e.printStackTrace();} } if (ballx 10){ try {URL url = this.getClass().getClassLoader().getResource("sound.wav"); AudioInputStream audioIn = AudioSystem.getAudioInputStream(url); Clip clip = AudioSystem.getClip(); clip.open(audioIn); clip.start();} catch (UnsupportedAudioFileException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} catch (LineUnavailableException e) {e.printStackTrace();} } if (bally 490){ try {URL url = this.getClass().getClassLoader().getResource("sound.wav"); AudioInputStream audioIn = AudioSystem.getAudioInputStream(url); Clip clip = AudioSystem.getClip(); clip.open(audioIn); clip.start();} catch (UnsupportedAudioFileException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} catch (LineUnavailableException e) {e.printStackTrace();} } if (bally 10){ try {URL url = this.getClass().getClassLoader().getResource("sound.wav"); AudioInputStream audioIn = AudioSystem.getAudioInputStream(url); Clip clip = AudioSystem.getClip(); clip.open(audioIn); clip.start();} catch (UnsupportedAudioFileException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} catch (LineUnavailableException e) {e.printStackTrace();} } repaint(); try{th.sleep(100);} catch(InterruptedException e) { } } } }
https://w.atwiki.jp/oretomonowa/pages/61.html
マルチバイト文字をエンコードする方法 import java.net.URLEncoder; import java.io.UnsupportedEncodingException; public class UrlEncode { public static void main(String[] args) { String str = "あいうえお"; try { str = URLEncoder.encode(str, "SJIS"); System.out.println(str); }catch (UnsupportedEncodingException e) { } } }
https://w.atwiki.jp/matlab/pages/24.html
DIできるもの マルチスレッド 参考 <link_pdfプラグインはご利用いただけなくなりました。> DIできるもの JavaEE5では、EJBコンテナ及びWebコンテナが管理するオブジェクトをDIする仕組みを持っている。 注入対象オブジェクト(注入するオブジェクト) セッションBean データソース JMSのコネクションファクトリ JMSのディスティネーション JavaMailのセッション JTAのユーザトランザクション EJBコンテキスト JPAエンティティマネージャ JPAエンティティマネージャファクトリ タイマーサービス 注入先オブジェクト(注入される・してもらうオブジェクト) Webコンポーネント サーブレット フィルタ リスナ タグハンドラ マネージドBean EJBコンポーネント セッションBean インターセプタ メッセージ駆動Bean Webサービスコンポーネント サービス実装クラス マルチスレッド マルチスレッド環境のインスタンス変数は以下のような対策でスレッドセーフにておく必要がある。 インスタンス変数を、状態を持たないオブジェクトにする インスタンス変数を、イミュータブルオブジェクトにする インスタンス変数内の状態に対する更新処理を、synchronizedブロックで同期化する ※イミュータブルオブジェクトとは、一度インスタンスを生成すると以降状態を変更できないオブジェクトをいう。 注入先オブジェクトの複数スレッド同時アクセス 注入先オブジェクト 生成単位 複数スレッドからの同時アクセス サーブレット web.xmlのservlet要素ごと あり フィルタ web.xmlのfilter要素ごと あり リスナ web.xmlのlistener要素ごと あり タグハンドラ リクエストごと なし マネージドBean(アプリケーションスコープ) Webアプリケーションごと あり マネージドBean(セッションスコープ) セッションごと あり マネージドBean(リクエストスコープ) リクエストごと なし セッションBean コンテナに複数のオブジェクトをプール なし インターセプタ コンテナに複数のオブジェクトをプール なし メッセージ駆動Bean コンテナに複数のオブジェクトをプール なし サービス実装クラス(WAR) ひとつ あり サービス実装クラス(EJB-JAR) コンテナに複数のオブジェクトをプール なし 注入対象オブジェクトのスレッドセーフ 注入対象オブジェクト スレッドセーフか? セッションBean 実装依存 データソース 実装依存 JMSのコネクションファクトリ スレッドセーフ JMSのディスティネーション スレッドセーフ JavaMailのセッション 実装依存 JTAのユーザトランザクション スレッドセーフ EJBコンテキスト スレッドセーフ JPAエンティティマネージャ スレッドセーフでない JPAエンティティマネージャファクトリ スレッドセーフ タイマーサービス スレッドセーフ 注入先オブジェクトが複数スレッド同時アクセスありで、そこへ注入する注入対象オブジェクトがスレッドセーフでない場合は採用してはいけない。 たとえば、サーブレットへJPAのエンティティマネージャを注入してはいけない。 この場合、スレッドセーフなエンティティマネージャファクトリを注入し、そこからエンティティマネージャを取得して解決する。 参考 UFJIS株式会社 斉藤賢哉、マスタリングJavaEE5、翔泳社、2007年
https://w.atwiki.jp/amagi3/pages/14.html
Java Web関連 ApacheとTomcat
https://w.atwiki.jp/wikittoku/pages/13.html
javaのzip圧縮 javaのzip圧縮/解凍では以下のどちらかのパッケージが使用できる。しかし、下記の文字化けの問題で org.apache.tools.zip を使う必要がある。 java.util.zip (標準) org.apache.tools.zip (apacheAnt) ハマったところ 文字化け 原因: java.util.zip はUTF-8固定のため。 対策: org.apache.tools.zip を使用する。ZipOutputStream#setEncoding() メソッドでエンコード指定が可能。 org.apache.tools.zip は apacheAnt の ant.jar の中に入っている。-- http //ant.apache.org/ WindowsXP 標準の Compressed (zipped) Folder で空フォルダがファイルに見える。 原因: 不明。ダブルクリックしてみるとフォルダ扱いになっている。 対策: 不明。解凍すると正しくフォルダになる。どなたかご存知の方いましたらご教授よろしくお願いします。 解凍時、エラーが発生 原因: ヘッダのCRC,サイズを見る解凍ツールの問題?ヘッダにCRC,サイズが入ってないとエラーになる解凍ツールがあるらしい 対策: ランダムファイルアクセス使用で圧縮し、自動的にヘッダにCRC,サイズ等を書き込む。 or1回仮圧縮をしてサイズを計り、2回目で本圧縮時にヘッダに設定する。 orヘッダのサイズを見てエラーを吐く解凍ツールを使わない。(難 zipフォーマット仕様 http //www.pkware.com/documents/casestudies/APPNOTE.TXT CRC, 圧縮サイズ, 解凍時サイズの設定について 上記3つの設定箇所はエントリポイントのヘッダとフッタにある。 圧縮サイズは圧縮後にしかわからないため、1回サイズ測定用に仮圧縮し、2回目の本圧縮時にサイズを設定する必要がある。しかし、以下の場合は内部で自動計算し、ヘッダに戻って設定してくれるので設定不要。 org.apache.tools.zip.ZipOutputStream では Method=DEFLATED(圧縮)かつ seekable (ランダムアクセスファイル)の場合のみ ランダムアクセスファイル使用方法 org.apache.tools.zip.ZipOutputStream の以下のコンストラクタを使用する。 ZipOutputStream zos = new ZipOutputStream(File); コメント 間違い、ご意見などありましたらよろしくお願いします。 名前 コメント