- 浏览: 1602732 次
- 来自: 上海
-
文章分类
- 全部博客 (374)
- Java (101)
- Struts (54)
- Oracle (30)
- JavaScript (16)
- Spring (27)
- Hibernate (16)
- MyEclipse (3)
- JSF (1)
- FreeMarker (2)
- SiteMesh (2)
- JfreeChart (2)
- Ibatis (2)
- JSP (12)
- MyBatis (4)
- SWFupload (1)
- EJB (4)
- Jboss (4)
- WebService (2)
- Linux (16)
- Android (2)
- XML (6)
- Java 网络编程 (13)
- AXIS2 (1)
- FTP (1)
- Jswing (1)
- Socket (3)
- 杂文选集 (6)
- solr (2)
- PS (1)
- Tomcat (7)
- JDBC (9)
- Highcharts (1)
- maven (1)
- Nodejs (0)
- navicat (2)
- Exception (5)
- eclipse (3)
- jQuery (1)
- springMVC (4)
- MySQL (11)
- SVN (1)
- Sql Server (1)
- zookeeper (1)
- JVM (1)
- Groovy (2)
- Git (1)
- Nginx (1)
- DynamicReport (1)
- IDEA (2)
- JasperReports (1)
- Postgresql (2)
- Mac (1)
- gradle (1)
- 数据结构算法 (1)
最新评论
-
hpu145:
引用引用
java 千分位的添加和去除 -
被遗忘的下路:
少了个junit-4.8.2的包
SSH2整合完整案例(四十三) -
白天看黑夜:
java过滤emoji字符处理,希望能帮到你http://ww ...
emoji 表情图片解决方法 -
caipeiming:
这个挺好JavaScript实现input输入框控件只允许输入 ...
js 控制文本框只能输入中文、英文、数字等 -
双子树:
东西太好啦受教啊
Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)
自定义简单 IE 1.采用 简单的GUI
自定义IE2,采用简单的GUI
import java.awt.Button; import java.awt.Dialog; import java.awt.FlowLayout; import java.awt.Frame; import java.awt.Label; import java.awt.TextArea; import java.awt.TextField; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.BufferedReader; import java.io.File; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; public class MyIEByGUI { private Frame f; private TextField tf; private Button btn; private TextArea ta; private Dialog d; private Label lab; private Button okbtn; MyIEByGUI(){ init(); } private void init(){ f=new Frame("my Window"); f.setBounds(300,100,600,500); f.setLayout(new FlowLayout()); tf=new TextField(60); btn=new Button("转到"); ta=new TextArea(25,70); d=new Dialog(f,"提示信息-self",true); d.setBounds(400,200,250,150); d.setLayout(new FlowLayout()); lab=new Label(); okbtn=new Button("确定"); d.add(lab); d.add(okbtn); f.add(tf); f.add(btn); f.add(ta); myEvent(); f.setVisible(true); } private void myEvent() { //添加 回车 时候 自动转到 tf.addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { // TODO Auto-generated method stub if(e.getKeyCode()==KeyEvent.VK_ENTER){ showDir(); } } }); //确定按钮事件 okbtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub d.setVisible(false); } }); d.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { // TODO Auto-generated method stub d.setVisible(false); } }); btn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { showDir(); } }); f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e){ System.exit(0); } }); } private void showDir() { try{ String url=tf.getText(); //http://192.168.1.121:10000/myweb/demo.html int index=url.indexOf("//")+2; int index2=url.indexOf("/",index); String str=url.substring(index,index2);//192.168.1.121:10000 String[] arr=str.split(":"); //192.168.1.121 10000 String host=arr[0]; int prot=Integer.parseInt(arr[1]); String path=url.substring(index2); //myweb/demo.html Socket s=new Socket(host,prot); PrintWriter out=new PrintWriter(s.getOutputStream(),true); out.println("GET "+path+" HTTP/1.1"); out.println("Accept: */*"); out.println("Accept-Language: zh-CN"); out.println("Host: "+str); //out.println("Connection: Keep-Alive"); 请求完后 还保持连接,直到 请求超时 out.println("Connection: closed"); //请求完后,连接就关闭 out.println(); //结束头部请求 BufferedReader bufr=new BufferedReader(new InputStreamReader(s.getInputStream())); String line=null; while((line=bufr.readLine())!=null){ ta.append(line+"\r\n"); } s.close(); tf.setText(""); }catch(Exception e){ e.printStackTrace(); } } public static void main(String[] args) { new MyIEByGUI(); } }
自定义IE2,采用简单的GUI
import java.awt.Button; import java.awt.Dialog; import java.awt.FlowLayout; import java.awt.Frame; import java.awt.Label; import java.awt.TextArea; import java.awt.TextField; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.BufferedReader; import java.io.File; import java.io.InputStream; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; import java.net.URL; import java.net.URLConnection; public class MyIEByGUI1 { private Frame f; private TextField tf; private Button btn; private TextArea ta; private Dialog d; private Label lab; private Button okbtn; MyIEByGUI1(){ init(); } private void init(){ f=new Frame("my Window"); f.setBounds(300,100,600,500); f.setLayout(new FlowLayout()); tf=new TextField(60); btn=new Button("转到"); ta=new TextArea(25,70); d=new Dialog(f,"提示信息-self",true); d.setBounds(400,200,250,150); d.setLayout(new FlowLayout()); lab=new Label(); okbtn=new Button("确定"); d.add(lab); d.add(okbtn); f.add(tf); f.add(btn); f.add(ta); myEvent(); f.setVisible(true); } private void myEvent() { //添加 回车 时候 自动转到 tf.addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { // TODO Auto-generated method stub if(e.getKeyCode()==KeyEvent.VK_ENTER){ showDir(); } } }); //确定按钮事件 okbtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub d.setVisible(false); } }); d.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { // TODO Auto-generated method stub d.setVisible(false); } }); btn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { showDir(); } }); f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e){ System.exit(0); } }); } private void showDir() { try{ String urlTest=tf.getText(); //http://192.168.1.121:10000/myweb/demo.html URL url=new URL(urlTest); URLConnection conn= url.openConnection(); // 在内部帮我们进行 socket 连接 InputStream in=conn.getInputStream(); byte[] buf=new byte[1024]; int len=in.read(buf); ta.append(new String(buf,0,len)); tf.setText(""); }catch(Exception e){ e.printStackTrace(); } } public static void main(String[] args) { new MyIEByGUI1(); } }

发表评论
-
检测一个字符串是否在jvm的常量池中
2018-12-18 17:34 1036public static boolean inPool( ... -
UTC时间, GMT时间 ,夏令时
2017-08-18 15:12 2312经常混淆于此,特地研究了一下,记录在此以备忘。 整个地 ... -
java 反射List
2017-02-18 01:58 5707package com.enhance.reflect; ... -
JDK1.5 Exchange 两个线程互换数据
2016-08-04 18:00 1051import java.util.concurrent ... -
JDK1.5 CountDownLatch
2016-08-04 16:25 1074/* * 还有一个利用场景: ... -
java CyclicBarrier 循环障碍阻塞
2016-08-03 23:54 1045//一个同步辅助类,它允许一组线程互相等待,直到到达某个公 ... -
java 信号灯 Semaphore
2016-08-03 23:53 1845更多介绍http://blog.csdn.net/java20 ... -
java 使用读写锁设计一个缓存模型
2016-08-03 23:49 1441import java.util.HashMap; ... -
java 读写锁
2016-08-03 23:46 843import java.util.Random; i ... -
java 多个线程之间同步通信
2016-08-02 17:16 2421import java.util.concurrent ... -
jdk1.5 锁 Lock 和 Condition
2016-08-02 17:03 954// lock 练习 public class Lock ... -
JDK1.5 获取线程执行结果 Callable Future
2016-08-02 15:08 1197import java.util.Random; i ... -
JDK1.5 线程池
2016-08-02 14:48 830import java.util.concurrent ... -
java 多线程ThreadLocal
2016-08-02 00:13 1173import java.util.Random; ... -
java 定时器 Timer
2016-08-01 16:53 3928import java.util.Calendar; ... -
java 多线程同步+通信
2016-08-01 16:48 998/** *父子线程 交替打印10 次, 100次 ... -
java 线程同步
2016-08-01 16:43 1054import java.util.concurrent.l ... -
java多线程练习
2016-08-01 16:35 1866Java 传统多线程 Java 多线程同步 Java 多线 ... -
java 传统多线程
2016-08-01 16:34 1050/** * 传统多线程 */ public ... -
java 图片,剪切,缩放
2016-01-06 10:21 2256package out; import ja ...
相关推荐
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java...
Java范例开发大全(全书源程序),目录如下: 第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java...
### Java基础知识 #### 1. Java的基本数据类型与String类型的区别 - **基本数据类型**:包括byte、short、int、long、float、double、char、boolean等,它们是值类型,存储的是实际的值。 - **String**:不是基本...