网页设计java代码 java 网页制作

设计一个JAVA程序,下载由URL指定的网页的源代码,找出其中所有的超链接。

import java.awt.BorderLayout;

我们拥有10年网页设计和网站建设经验,从网站策划到网站制作,我们的网页设计师为您提供的解决方案。为企业提供成都做网站、网站制作、微信开发、小程序开发成都手机网站制作H5技术、等业务。无论您有什么样的网站设计或者设计方案要求,我们都将富于创造性的提供专业设计服务并满足您的需求。

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java点虐 .HttpURLConnection;

import java点虐 .MalformedURLException;

import java点虐 .URL;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JScrollPane;

import javax.swing.JTextArea;

import javax.swing.JTextField;

public class HttpViewer extends JFrame {

private JTextField urlInput;

private JTextArea viewArea;

public static void main(String[] args) {

new HttpViewer();

}

public HttpViewer() {

this.setTitle("Http Viewer");

this.setSize(800, 600);

this.setResizable(false);

this.setDefaultCloseOperation(EXIT_ON_CLOSE);

initPanel();

initAction();

this.setVisible(true);

}

// 这个方法用来设置窗口布局

private void initPanel() {

JPanel northPanel = new JPanel();

JLabel urlInputLabel = new JLabel("URL:");

urlInput = new JTextField(60);

northPanel.add(urlInputLabel);

northPanel.add(urlInput);

this.add(northPanel, BorderLayout.NORTH);

JPanel centerPanel = new JPanel();

viewArea = new JTextArea(27, 60);

centerPanel.add(new JScrollPane(viewArea));

this.add(centerPanel);

}

// 这个方法用来设置事件

private void initAction() {

urlInput.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

String text = urlInput.getText();

if (text == null || text.length() == 0) {

viewArea.setText("您没有输入URL");

return;

}

try {

URL url = new URL(text);

配碧      String context = getContent(url);

if (context != null) {

渣卖蔽 searchFromText(context);

}

} catch (MalformedURLException e1) {

viewArea.setText("您输入的URL不合法:" + text);

}

}

});

}

private String getContent(URL url) {

StringBuffer builder = new StringBuffer();

int responseCode = -1;

如州     HttpURLConnection con = null;

try {

con = (HttpURLConnection) url.openConnection();

con.setRequestProperty("User-Agent",

"Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");// IE代理进行下载

con.setConnectTimeout(60000);

con.setReadTimeout(60000);

// 获得网页返回信息码

responseCode = con.getResponseCode();

if (responseCode == -1) {

viewArea.setText("连接失败:" + url.toString());

return null;

}

if (responseCode = 400) {

viewArea.setText("请求失败,错误码:" + responseCode);

return null;

}

InputStream is = con.getInputStream();

InputStreamReader isr = new InputStreamReader(is);

BufferedReader br = new BufferedReader(isr);

String str = null;

while ((str = br.readLine()) != null)

builder.append(str);

is.close();

} catch (IOException e) {

e.printStackTrace();

viewArea.setText("IOException: " + url.toString());

} finally {

con.disconnect();

}

return builder.toString();

}

private void searchFromText(String context) {

viewArea.setText("查找URL中:\n");

Pattern pattern = Pattern点抗 pile("a( [^]+)*(.*?)/a");

Matcher matcher = pattern.matcher(context);

while (matcher.find()) {

for (String prop : matcher.group(1).split(" ")) {

int indexOf = prop.indexOf('=');

if (indexOf  0) {

if (prop.substring(0, indexOf).equals("href")) {

String url2 = prop.substring(indexOf + 2, prop.length() - 1);

viewArea.append(url2 + "\n");

}

}

}

}

}

}

java浏览器课程设计

⑴ 怎样用Java制作一个简单浏览器解决方法

importjavax.swing.*;

importjava.awt.*;

importjava.awt.event.*;

importjava.*;

importjava.io.*;

importjavax.swing.event.*;

@SuppressWarnings("serial")

,Runnable

{

JButtonbutton;

URLurl;

JTextFieldtext;

JEditorPaneeditPane;

byteb[]=newbyte[118];

Threadthread;

publicWin3()

{

text=newJTextField(20);

editPane=newJEditorPane();

editPane.setEditable(false);

button=newJButton("确定");

button.addActionListener(this);

thread=newThread(this);

JPanelp=newJPanel();

p.add(newJLabel("输入网址:"));

p.add(text);

p.add(button);

Containercon=getContentPane();

con.add(newJScrollPane(editPane),BorderLayout.CENTER);

con.add(p,BorderLayout.NORTH);

setBounds(60,60,400,300);

setVisible(true);

validate();

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

editPane.addHyperlinkListener(newHyperlinkListener()

{

publicvoidhyperlinkUpdate(HyperlinkEvente)

{

if(e.getEventType()==

HyperlinkEvent.EventType.ACTIVATED)

{

try{

editPane.setPage(e.getURL());

}

catch(IOExceptione1)

{

editPane.setText(""+e1);

}

}

}

}

);

}

publicvoidactionPerformed(ActionEvente)

{

if(!(thread.isAlive()))

thread=newThread(this);

try{

thread.start();

}

catch(Exceptionee)

{

text.setText("我正稿芦在读取"+url);

}

}

publicvoidrun()

{

try{

intn=-1;

editPane.setText(null);

url=newURL(text.getText().trim());

editPane.setPage(url);

}

catch(MalformedURLExceptione1)

{

text.setText(""+e1);

return;

}

catch(IOExceptione1)

{

text.setText(""+e1);

return;

}

}

}

publicclassExample3

{

publicstaticvoidmain(Stringargs[])

{

newWin3();

}

}

⑵ 关于用java自己做一款浏览器。其具体的设计思路是什么,该怎么考虑,从哪方面入手。流程是什么。

你还是先出入门的程序练起吧。。。。

你提到的每一个部件都是一个比较沉重的课题。

⑶ 用java编写简易浏览器

地址栏如果有变化就不正常了,因为在你的代码中并没有执行更改地址栏的语句内:

bol.setSelectedIndex() 或 bol.setSelectedItem();

用 JEditorPane 做一容个类似浏览器显示氏冲的网页效果很歼敬歼难看。

有很多css,javascript无法正常解析。

如果一个网页中只含有 div table 这样的,还好些。

网页做的越漂亮(因为要做的漂亮就要用到css样式),显示出来越难看。

⑷ 用java编写一个图片浏览器

import java.awt.BorderLayout;

import java.awt.Graphics;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.io.File;

import java.util.ArrayList;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JFileChooser;

import javax.swing.JFrame;

import javax.swing.JMenu;

import javax.swing.JMenuBar;

import javax.swing.JMenuItem;

import javax.swing.JPanel;

public class ImageGallery extends JFrame implements ActionListener {

public static final int G_WIDTH = 400, G_HEIGHT = 620;

public static final int L_WIDTH = 1200, L_HEIGHT = 520;

public static final int MAX_R = 3, MAX_C = 2;

public static final int GRID = 1, LARGE = 2;

private JFileChooser chooser;

private JMenuBar toolBar;

private JMenu menu;

private JMenuItem open;

private ArrayListString paths;

private JPanel showingPanel, buttonPanel;

private int page = 1;

private int count = 0;

private int showType = GRID;

private int pageMax;

private JButton last, next, large, grid;

public ImageGallery() {

.setTitle("Image gallery 0.1");

this.setBounds(100, 100, G_WIDTH, G_HEIGHT);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

toolBar = new JMenuBar();

chooser = new JFileChooser();

chooser.setCurrentDirectory(new java.io.File("."));

chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);

menu = new JMenu("File");

toolBar.add(menu);

open = new JMenuItem("open");

open.addActionListener(this);

menu.add(open);

paths = new ArrayListString();

this.setJMenuBar(toolBar);

showingPanel = new JPanel();

buttonPanel = new JPanel();

last = new JButton("last");

last.addActionListener(this);

next = new JButton("next");

next.addActionListener(this);

large = new JButton("large");

large.addActionListener(this);

grid = new JButton("grid");

grid.addActionListener(this);

buttonPanel.add(last);

buttonPanel.add(large);

buttonPanel.add(grid);

buttonPanel.add(next);

this.add(buttonPanel, BorderLayout.SOUTH);

this.add(showingPanel);

this.setVisible(true);

}

public void doOpen() {

int result = chooser.showOpenDialog(null);

if (result == JFileChooser.APPROVE_OPTION) {

String directory = chooser.getSelectedFile().getPath();

this.getAllImage(directory);

for (String s : this.paths) {

System.out.println(s);

}

this.showingImage();

}

}

public void getAllImage(String directory) {

paths.clear();

page = 1;

count = 0;

File file = new File(directory);

if (file.isDirectory()) {

String[] list = file.list();

for (String s : list) {

String path = directory + "\\" + s;

File temp = new File(path);

if (!temp.isDirectory()) {

this.paths.add(path);

}

}

}

}

public void changePage(int page) {

if (!paths.isEmpty()) {

switch (showType) {

case GRID:

this.page += page;

if (this.page == 0) {

this.page = 1;

}

if (this.page pageMax) {

this.page = pageMax;

}

break;

case LARGE:

this.count += page;

if (count 0) {

count = 0;

}

if (count paths.size() - 1) {

count = paths.size() - 1;

}

break;

}

this.showingImage();

}

}

public void showingImage() {

this.remove(showingPanel);

showingPanel = new JPanel();

int size = paths.size();

int max = MAX_R * MAX_C;

pageMax = (size % max == 0 ? size / max : size / max + 1);

switch (showType) {

case GRID:

this.setBounds(100, 100, G_WIDTH, G_HEIGHT);

showingPanel.setLayout(new GridLayout(MAX_R, MAX_C - 1));

int i = (page - 1) * max;

int j = page * max;

for (; i j i size; i++) {

String path = paths.get(i);

showingPanel.add(new ImagePanel(path));

}

break;

case LARGE:

int left = count - 1;

int right = count + 1;

this.setBounds(100, 100, L_WIDTH, L_HEIGHT);

showingPanel.setLayout(new GridLayout(1, 2));

if (left = 0) {

showingPanel.add(new ImagePanel(paths.get(left)));

} else {

showingPanel.add(new ImagePanel(""));

}

showingPanel.add(new ImagePanel(paths.get(count)));

if (right size) {

showingPanel.add(new ImagePanel(paths.get(right)));

} else {

showingPanel.add(new ImagePanel(""));

}

break;

}

this.add(showingPanel, BorderLayout.CENTER);

showingPanel.updateUI();

}

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

new ImageGallery();

}

class ImagePanel extends JPanel {

private ImageIcon image;

ImagePanel(String path) {

image = new ImageIcon(path);

}

public ImageIcon getImageIcon() {

return this.image;

}

@Override

protected void paintComponent(Graphics g) {

// TODO Auto-generated method stub

g.drawImage(image.getImage(), 0, 0, this.getWidth(), this

.getHeight(), this);

}

}

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

String key = e.getActionCommand();

System.out.println(key);

if (key.equals("open")) {

doOpen();

} else if (key.endsWith("last")) {

changePage(-1);

} else if (key.endsWith("next")) {

changePage(1);

} else if (key.endsWith("large")) {

if (!paths.isEmpty()) {

count =0;

showType = LARGE;

showingImage();

}

} else if (key.endsWith("grid")) {

if (!paths.isEmpty()) {

page = 1;

showType = GRID;

showingImage();

}

}

}

}

⑸ JAVA编写浏览器

可以看下这个专属

//blog.csdn/LJLOVELZ/archive/2007/05/04/1596205.aspx

⑹ 用java编写一个浏览器

import java.awt.*;

import java.awt.event.*;

import java.*;

import java.io.*;

import javax.swing.*;

import javax.swing.text.DefaultStyledDocument;

//HTTP连接与浏览

public class HTTPBrowser extends JFrame{

JTextField jtfAddress; //输入文件地址或网址

JTextPane jtpShow; //显示页面

JTextArea jtaSource; //显示HTML源文件

public HTTPBrowser(){

super("HTTP连接与浏览"); //调用父类构造函数

jtfAddress=new JTextField(30); //实例化地址输入框

jtpShow=new JTextPane(); //实例化显示内容框

jtaSource=new JTextArea();

JPanel p1=new JPanel(); //实例化面板

JSplitPane spane=new JSplitPane(JSplitPane.VERTICAL_SPLIT); //实例化分隔面板

p1.add(new JLabel("地址")); //增加组件到面板上

p1.add(jtfAddress);

spane.add(new JScrollPane(jtpShow),JSplitPane.TOP);

spane.add(new JScrollPane(jtaSource),JSplitPane.BOTTOM);

spane.setDividerLocation(130); //设置分隔位置

spane.setDividerSize(2); //设置分隔栏尺寸

Container container=getContentPane(); //得到容器

container.add(p1,BorderLayout.NORTH); //增加组件到容器上

container.add(spane,BorderLayout.CENTER);

jtfAddress.addActionListener(new ShowHTMLListener()); //输入地址文本域事件处理

setSize(380,300); //设置窗口尺寸

setVisible(true); //设置窗口可视

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序

}

class ShowHTMLListener implements ActionListener {

public void actionPerformed(ActionEvent event) {

try{

URL address=new URL(jtfAddress.getText()); //得到HTML页面的URL地址

jtpShow.setContentType("text/"); //设置内容格式

jtpShow.setPage(address); //设置显示页面

BufferedReader in= new BufferedReader(new InputStreamReader(address.openStream())); //获取输入流

String line;

StringBuffer content = new StringBuffer(); //文件内容

while ((line = in.readLine()) != null) { //读取文件

content.append(line+"\n");

}

jtaSource.setText(new String(content)); //设置显示文本

in.close(); //关闭输入流

}

catch (Exception ex){

ex.printStackTrace(); //输出出错信息

}

}

}

public static void main(String[] args){

new HTTPBrowser();

}

}

这还有一个

import java.awt.*;

import java.awt.event.*;

import java.URL;

import javax.swing.*;

//浏览器

public class HTTPBrowserDemo extends JFrame{

JTextField jtfAddress; //输入文件地址或网址

JButton jbGo; //转到文件按钮

JTextPane jtpShow; //显示文件

JLabel jlInfo; //提示信息

public HTTPBrowserDemo(){

super("浏览器"); //调用父类构造函数

jtfAddress=new JTextField(20); //实例化地址输入框

jbGo=new JButton("转到"); //实例化转向按钮

jtpShow=new JTextPane(); //实例化显示内容框

jlInfo=new JLabel(); //实例化信息提示标签

JPanel panel=new JPanel(); //实例化面板

panel.add(new JLabel("地址")); //增加组件到面板上

panel.add(jtfAddress);

panel.add(jbGo);

JScrollPane jsp=new JScrollPane(jtpShow); //实例化滚动窗体

Container container=getContentPane(); //得到容器

container.add(panel,BorderLayout.NORTH); //增加组件到容器上

container.add(jsp,BorderLayout.CENTER);

container.add(jlInfo,BorderLayout.SOUTH);

jbGo.addActionListener(new ShowHTMLListener()); //事件处理,发生按钮点击时显示页面内容

jtfAddress.addActionListener(new ShowHTMLListener());

setSize(350,280); //设置窗口尺寸

setVisible(true); //设置窗口可视

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序

}

class ShowHTMLListener implements ActionListener { //显示页面内容事件处理

public void actionPerformed(ActionEvent event) {

try{

jlInfo.setText("正在连接..."); //显示提示信息

URL address=new URL(jtfAddress.getText()); //得到HTML页面的URL地址

jtpShow.setPage(address); //设置显示页面

jlInfo.setText("完成");

}

catch (Exception ex){

jlInfo.setText("连接出错");

ex.printStackTrace(); //输出出错信息

}

}

}

public static void main(String[] args){

new HTTPBrowserDemo();

}

}

⑺ 用Java代码怎么在浏览器中显示一个网页

package .test;

import java.lang.reflect.Method;

//实现打开浏览器并跳到指定网址的类

public class BareBonesBrowserLaunch {

public static void openURL(String url) {

try {

browse(url);

} catch (Exception e) {

}

}

private static void browse(String url) throws Exception {

//获取操作系统的名字

String osName = System.getProperty("os.name", "");

if (osName.startsWith("Mac OS")) {

//苹果的打开方式

Class fileMgr = Class.forName(".apple.eio.FileManager");

Method openURL = fileMgr.getDeclaredMethod("openURL", new Class[] { String.class });

openURL.invoke(null, new Object[] { url });

} else if (osName.startsWith("Windows")) {

//windows的打开方式。

Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + url);

} else {

// Unix or Linux的打开方式

String[] browsers = { "firefox", "opera", "konqueror", "epiphany", "mozilla", "scape" };

String browser = null;

for (int count = 0; count browsers.length browser == null; count++)

//执行代码,在brower有值后跳出,

//这里是如果进程创建成功了,==0是表示正常结束。

if (Runtime.getRuntime().exec(new String[] { "which", browsers[count] }).waitFor() == 0)

browser = browsers[count];

if (browser == null)

throw new Exception("Could not find web browser");

else

//这个值在上面已经成功的得到了一个进程。

Runtime.getRuntime().exec(new String[] { browser, url });

}

}

}

⑻ 如何用java编写浏览器

正好我前几天做了一来个自浏览器实例,挺容易的其实。就用到了:

1.awtswing编界面和响应。

2.网页显示区域是用JEditPane来显示的。通过在上方设置一个JTextField输入url以后,这里获得url,然后直接setPage到url就行了。也不是太难。

其他没啥如果楼主要代码的话留下邮箱。

楼主编浏览器大概需要以下知识:

1.javase基础

2.协议大致传输过程

3.基础的awtswing,以及窗口响应布局等

4.浅显的多线程知识

⑼ 超简单的web浏览器用java实现

截图:

进入 //网页:

访问硬盘上的Html文件:file:盘符://文件名 (如果满意就采纳吧。。)

import java.awt.*;

import java.awt.event.*;

import java.URL;

import javax.swing.*;

public class HTTPBrowserDemo extends JFrame{

JTextField jtfAddress; //输入文件地址或网址

JButton jbGo; //转到文件按钮

JTextPane jtpShow; //显示文件

JLabel jlInfo; //提示信息

public HTTPBrowserDemo(){

super("浏览器"); //调用父类构造函数

jtfAddress=new JTextField(20); //实例化地址输入框

jbGo=new JButton("转到"); //实例化转向按钮

jtpShow=new JTextPane(); //实例化显示内容框

jlInfo=new JLabel(); //实例化信息提示标签

JPanel panel=new JPanel(); //实例化面板

panel.add(new JLabel("地址")); //增加组件到面板上

panel.add(jtfAddress);

panel.add(jbGo);

JScrollPane jsp=new JScrollPane(jtpShow); //实例化滚动窗体

Container container=getContentPane(); //得到容器

container.add(panel,BorderLayout.NORTH); //增加组件到容器上

container.add(jsp,BorderLayout.CENTER);

container.add(jlInfo,BorderLayout.SOUTH);

jbGo.addActionListener(new ShowHTMLListener()); //事件处理,发生按钮点击时显示页面内容

jtfAddress.addActionListener(new ShowHTMLListener());

setSize(350,280); //设置窗口尺寸

setVisible(true); //设置窗口可视

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序

}

class ShowHTMLListener implements ActionListener { //显示页面内容事件处理

public void actionPerformed(ActionEvent event) {

try{

jlInfo.setText("正在连接..."); //显示提示信息

URL address=new URL(jtfAddress.getText()); //得到HTML页面的URL地址

jtpShow.setPage(address); //设置显示页面

jlInfo.setText("完成");

}

catch (Exception ex){

jlInfo.setText("连接出错");

ex.printStackTrace(); //输出出错信息

}

}

}

public static void main(String[] args){

new HTTPBrowserDemo();

}

}

⑽ 怎样用Java制作一个简单浏览器

java制作浏览器的话,可以考虑使用android来制作一个,简单实现加载网页资源等等。

如何用java制作网页?

怎么用java来编写网页,目前比较流行的是SSH(纯塌告struts2+spring+hibernate)框架。其实只要有servlet和JSP基础就可以实现,框架只是高效的开发和管理。

推荐使用SSH框架进行开发。

使用struts2来实现页面跳转,他的标签也可以写JSP界面。

使用hibernate来进行数据库操作的封装,进行自动管理。

使用spring可以整合以上两个,使控制权转移给spring,这个就是控制反转。

具体页面怎么衫渣写,这个多看下工具书不难。前台做明页面可以使用HTML来写,解析速度快,并且页面开发难度低,排版效果好。


文章题目:网页设计java代码 java 网页制作
文章路径:http://ybzwz.com/article/ddpesei.html