百度
360搜索
搜狗搜索

javaweb完整项目源码,求Java web增删改查 极简源码详细介绍

本文目录一览: 求一套完整的JAVA WEB项目的网络购物网站源代码

/** * @description: * @author chenshiqiang E-mail:csqwyyx@163.com * @date 2014年9月7日 下午2:51:50 * @version 1.0 */package com.example.baidumap;import java.util.ArrayList;import java.util.Collections;import java.util.HashSet;import java.util.List;import android.app.Activity;import android.os.Bundle;import android.support.v4.view.PagerAdapter;import android.support.v4.view.PagerTabStrip;import android.support.v4.view.ViewPager;import android.text.Editable;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ExpandableListView;import android.widget.ListView;import com.baidu.mapapi.map.offline.MKOLSearchRecord;import com.baidu.mapapi.map.offline.MKOLUpdateElement;import com.baidu.mapapi.map.offline.MKOfflineMap;import com.baidu.mapapi.map.offline.MKOfflineMapListener;import com.example.baidumap.adapters.OfflineExpandableListAdapter;import com.example.baidumap.adapters.OfflineMapAdapter;import com.example.baidumap.adapters.OfflineMapManagerAdapter;import com.example.baidumap.interfaces.OnOfflineItemStatusChangeListener;import com.example.baidumap.models.OfflineMapItem;import com.example.baidumap.utils.CsqBackgroundTask;import com.example.baidumap.utils.ToastUtil;import com.example.system.R;public class BaiduOfflineMapActivity extends Activity implements MKOfflineMapListener, OnOfflineItemStatusChangeListener{ // ------------------------ Constants ------------------------ // ------------------------- Fields -------------------------- private ViewPager viewpager; private PagerTabStrip pagertab; private MySearchView svDown; private ListView lvDown; private MySearchView svAll; private ExpandableListView lvWholeCountry; private ListView lvSearchResult; private List

views = new ArrayList

(2); private List

titles = new ArrayList

(2); private MKOfflineMap mOffline = null; private OfflineMapManagerAdapter downAdapter; private OfflineMapAdapter allSearchAdapter; private OfflineExpandableListAdapter allCountryAdapter; private List

itemsDown; // 下载或下载中城市 private List

itemsAll; // 所有城市,与热门城市及下载管理对象相同 private List

itemsProvince; private List
<list
> itemsProvinceCity; // ----------------------- Constructors ---------------------- // -------- Methods for/from SuperClass/Interfaces ----------- @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_offline_map); // final String packname = this.getPackageName();// PackageInfo packageInfo;// try// {// packageInfo = this.getPackageManager().getPackageInfo(packname, PackageManager.GET_SIGNATURES);// //// if (code == -00)// { // 初始化离线地图管理 mOffline = new MKOfflineMap(); mOffline.init(this); initViews(); viewpager.setCurrentItem(1);// }// }// catch (NameNotFoundException e)// {// e.printStackTrace();// } } private boolean isResumed = false; @Override protected void onResume() { super.onResume(); if (!isResumed) { isResumed = true; loadData(); } } @Override protected void onDestroy() { super.onDestroy(); mOffline.destroy(); } /** * * @author chenshiqiang E-mail:csqwyyx@163.com * @param type * 事件类型: MKOfflineMap.TYPE_NEW_OFFLINE, MKOfflineMap.TYPE_DOWNLOAD_UPDATE, MKOfflineMap.TYPE_VER_UPDATE. * @param state * 事件状态: 当type为TYPE_NEW_OFFLINE时,表示新安装的离线地图数目. 当type为TYPE_DOWNLOAD_UPDATE时,表示更新的城市ID. */ @Override public void onGetOfflineMapState(int type, int state) { switch (type) { case MKOfflineMap.TYPE_DOWNLOAD_UPDATE: MKOLUpdateElement update = mOffline.getUpdateInfo(state); if (setElement(update, true) != null) { if (itemsDown != null && itemsDown.size() > 1) { Collections.sort(itemsDown); } refreshDownList(); } else { downAdapter.notifyDataSetChanged(); } allSearchAdapter.notifyDataSetChanged(); allCountryAdapter.notifyDataSetChanged(); break; case MKOfflineMap.TYPE_NEW_OFFLINE: // 有新离线地图安装 Log.d("OfflineDemo", String.format("add offlinemap num:%d", state)); break; case MKOfflineMap.TYPE_VER_UPDATE: // 版本更新提示 break; } } /** * 百度下载状态改变(暂停--》恢复)居然不回调,所以改变状态时自己得增加接口监听状态改变刷新界面 * * @author chenshiqiang E-mail:csqwyyx@163.com * @param item * 有状态改变的item * @param removed * item是否被删除 */ @Override public void statusChanged(OfflineMapItem item, boolean removed) { if (removed) { for (int i = itemsDown.size() - 1; i >= 0; i--) { OfflineMapItem temp = itemsDown.get(i); if (temp.getCityId() == item.getCityId()) { itemsDown.remove(i); } } refreshDownList(); } else { loadData(); downAdapter.notifyDataSetChanged(); } allSearchAdapter.notifyDataSetChanged(); allCountryAdapter.notifyDataSetChanged(); } // --------------------- Methods public ---------------------- public void toDownloadPage() { viewpager.setCurrentItem(0); } // --------------------- Methods private --------------------- private void initViews() { // TODO viewpager = (ViewPager) findViewById(R.id.viewpager); pagertab = (PagerTabStrip) findViewById(R.id.pagertab); LayoutInflater inf = LayoutInflater.from(this); View v1 = inf.inflate(R.layout.view_offline_download, null, false); svDown = (MySearchView) v1.findViewById(R.id.svDown); lvDown = (ListView) v1.findViewById(R.id.lvDown); views.add(v1); View v2 = inf.inflate(R.layout.view_offline_countrys, null, false); svAll = (MySearchView) v2.findViewById(R.id.svAll); lvWholeCountry = (ExpandableListView) v2.findViewById(R.id.lvWholeCountry); lvSearchResult = (ListView) v2.findViewById(R.id.lvSearchResult); views.add(v2); titles.add("下载管理"); titles.add("城市列表"); pagertab.setTabIndicatorColor(0xff00cccc); pagertab.setDrawFullUnderline(false); pagertab.setBackgroundColor(0xFF38B0DE); pagertab.setTextSpacing(50); viewpager.setOffscreenPageLimit(2); viewpager.setAdapter(new MyPagerAdapter()); svDown.setSearchListener(new MySearchView.SearchListener() { @Override public void afterTextChanged(Editable text) { refreshDownList(); } @Override public void search(String text) { } }); svAll.setSearchListener(new MySearchView.SearchListener() { @Override public void afterTextChanged(Editable text) { refreshAllSearchList(); } @Override public void search(String text) { } }); downAdapter = new OfflineMapManagerAdapter(this, mOffline, this); lvDown.setAdapter(downAdapter); allSearchAdapter = new OfflineMapAdapter(this, mOffline, this); lvSearchResult.setAdapter(allSearchAdapter); allCountryAdapter = new OfflineExpandableListAdapter(this, mOffline, this); lvWholeCountry.setAdapter(allCountryAdapter); lvWholeCountry.setGroupIndicator(null); } /** * 刷新下载列表, 根据搜索关键字及itemsDown 下载管理数量变动时调用 */ private void refreshDownList() { String key = svDown.getInputText(); if (key == null || key.length() < 1) { downAdapter.setDatas(itemsDown); } else { List

filterList = new ArrayList

(); if (itemsDown != null && !itemsDown.isEmpty()) { for (OfflineMapItem i : itemsDown) { if (i.getCityName().contains(key)) { filterList.add(i); } } } downAdapter.setDatas(filterList); } } /** * 刷新所有城市搜索结果 */ private void refreshAllSearchList() { String key = svAll.getInputText(); if (key == null || key.length() < 1) { lvSearchResult.setVisibility(View.GONE); lvWholeCountry.setVisibility(View.VISIBLE); allSearchAdapter.setDatas(null); } else { lvSearchResult.setVisibility(View.VISIBLE); lvWholeCountry.setVisibility(View.GONE); List

filterList = new ArrayList

(); if (itemsAll != null && !itemsAll.isEmpty()) { for (OfflineMapItem i : itemsAll) { if (i.getCityName().contains(key)) { filterList.add(i); } } } allSearchAdapter.setDatas(filterList); } } private void loadData() { new CsqBackgroundTask

阅读更多 >>>  nodejs面试题及答案,完整的Java视频教程

(this) { @Override protected Void onRun() { // TODO Auto-generated method stub // 导入离线地图包 // 将从官网下载的离线包解压,把vmp文件夹拷入SD卡根目录下的BaiduMapSdk文件夹内。 // 把网站上下载的文件解压,将\BaiduMap\vmp\l里面的.dat_svc文件,拷贝到手机BaiduMapSDK/vmp/h目录下 int num = mOffline.importOfflineData(); if (num > 0) { ToastUtil.showToastInfo(BaiduOfflineMapActivity.this, "成功导入" + num + "个离线包", false); } List

all = null; try { all = mOffline.getOfflineCityList(); } catch (Exception e) { e.printStackTrace(); } if (all == null || all.isEmpty()) { ToastUtil.showToastInfo(BaiduOfflineMapActivity.this, "未获取到离线地图城市数据,可能有其他应用正在使用百度离线地图功能!", false); return null; } List

hotCity = mOffline.getHotCityList(); HashSet

hotCityIds = new HashSet

(); if (!hotCity.isEmpty()) { for (MKOLSearchRecord r : hotCity) { hotCityIds.add(r.cityID); } } itemsAll = new ArrayList

(); itemsDown = new ArrayList

(); itemsProvince = new ArrayList

(); itemsProvinceCity = new ArrayList
<list
>(); // cityType 0:全国;1:省份;2:城市,如果是省份,可以通过childCities得到子城市列表 // 全国概略图、直辖市、港澳 子城市列表 ArrayList

childMunicipalities = new ArrayList

(); proHot.cityName = "热门城市"; proHot.childCities = cs; List

updates = mOffline.getAllUpdateInfo(); if (updates != null && updates.size() > 0) {} @Override protected void onResult(Void result) { // TODO Auto-generated method stub refreshDownList(); refreshAllSearchList(); allCountryAdapter.setDatas(itemsProvince, itemsProvinceCity); } }.execute(); }

</list

</list

如何快速读懂项目源码javaWeb

1.从代码结构入手,搞清楚复Java源码所在目录以及jsp代码所在目录。
2.从Web.xml入手,搞清楚首页,上下文及配置情况。
3.从lib目录里初步查看系统使用的框架和工具包。
4.从页面大体浏览,看页面的scriptlet使用的主要语言。制
5.从代码包结构初步知晓代码的层次。
6.从配置文件入手,弄清楚页面到Action/Servlet的配置关系。
7.搞清楚代码提交的百方式,前台请求如何传递到后台,又是如何返回到前台页面的,这里以Login页面为最佳切入点。
8.从处理Login的Action/Servlet中观察,看在session中记录了多少重要的数度据,后面程序又是怎样用到这些数据的。
9.如果存在树形菜单,要搞清楚树形菜单的形成及传递请求的方式。
10.归纳几种典型页面,搞清楚其处理和响应形式。
11.归纳通用知的页面组件如分页,上传下载,异步请求等原系统是如何处理的。
12.搞清楚后台数据来源及配置,主要是数据库及通过WebService方式。
13.归纳后台处理的主要业务。
14.可能的话,道把后台数据表的ER图画出来。
15.典型业务的流程图可以绘制出来。
从上往下读,参我最近写的一些项目,都是用javaweb实现的,可能具体的框架不用,但都是mvc思想写的
只要掌握mvc设计模式 一切好说
一:学会如何读一个JavaWeb项目源代码 步骤:表结构->web.xml->mvc->db->spring
ioc->log-> 代码
1、先了解项目数据库的表结构,这个方面是最容易忘记 的,有时候我们只顾着看每一个方法是怎么进行的,却没
有去了解数据库之间的主外键关联。其实如果先了解数据 库表结构,再去看一个方法的实现会更加容易。
2、然后需要过一遍web.xml,知道项目中用到了什么拦
截器,监听器,过滤器,拥有哪些配置文件。如果是拦截 器,一般负责过滤请求,进行AOP 等;如果是监 可能是定时任务,初始化任务;配置文件有如使用了 spring
后的读取mvc 相关,db 相关,service 相关,aop 相关的文件。
3、查看拦截器,监听器代码,知道拦截了什么请求,这
个类完成了怎样的工作。有的人就是因为缺少了这一步, 自己写了一个action,配置文件也没有写错,但是却怎么
调试也无法进入这个action,直到别人告诉他,请求被拦
4、接下来,看配置文件,首先一定是mvc相关的,如 springmvc
中,要请求哪些请求是静态资源,使用了哪些 view 策略,controller 注解放在哪个包下等。 然后是db 相关配置文件,看使用了什么数据库,使用了
什么orm框架,是否开启了二级缓存,使用哪种产品作 为二级缓存,事务管理的处理,需要扫描的实体类放在什 么位置。最后是spring 核心的ioc
功能相关的配置文件, 知道接口与具体类的注入大致是怎样的。当然还有一些如 apectj 置文件,也是在这个步骤中完成
5、log
相关文件,日志的各个级别是如何处理的,在哪些 地方使用了log 记录日志
6、从上面几点后知道了整个开源项目的整体框架,阅读 每个方法就不再那么难了。
7、当然如果有项目配套的开发文档也是要阅读的。

用java web小游戏源代码。期末结课老师让做,急用,谢了

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Toolkit;
import javax.swing.JFrame;
@SuppressWarnings("serial")
public class MainClass extends JFrame {
ControlSnake control;
Toolkit kit;
Dimension dimen;
public static void main(String[] args) {
new MainClass("my snake");
}
public MainClass(String s) {
super(s);
control = new ControlSnake();
control.setFocusable(true);
kit = Toolkit.getDefaultToolkit();
dimen = kit.getScreenSize();

add(control);
setLayout(new BorderLayout());
setLocation(dimen.width / 3, dimen.height / 3);// dimen.width/3,dimen.height/3
setSize(FWIDTH, FHEIGHT);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setVisible(true);
}
public static final int FWIDTH = 315;
public static final int FHEIGHT = 380;
}
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.util.ArrayList;
import java.util.Random;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.Timer;
@SuppressWarnings("serial")
public class ControlSnake extends JPanel implements ActionListener {
Random rand;
ArrayList

list, listBody;

String str, str1;

static boolean key;

int x, y, dx, dy, fx, fy, flag;

int snakeBody;

int speed;

public ControlSnake() {

snakeBody = 1;

str = "上下左右方向键控制 P键暂停...";

str1 = "现在的长度为:" + snakeBody;

key = true;

flag = 1;

speed = 700;

rand = new Random();

list = new ArrayList

();

listBody = new ArrayList

();

x = 5;

y = 5;

list.add(new Point(x, y));

listBody.add(list.get(0));

dx = 10;

dy = 0;

fx = rand.nextInt(30) * 10 + 5;// 2

fy = rand.nextInt(30) * 10 + 5;// 2

setBackground(Color.BLACK);

setSize(new Dimension(318, 380));

final Timer time = new Timer(speed, this);

time.start();

addKeyListener(new KeyAdapter(){

public void keyPressed(KeyEvent e) {

if (e.getKeyCode() == 37) {

dx = -10;

dy = 0;

} else if (e.getKeyCode() == 38) {

dx = 0;

dy = -10;

} else if (e.getKeyCode() == 39) {

dx = 10;

dy = 0;

} else if (e.getKeyCode() == 40) {

dx = 0;

dy = 10;

} else if (e.getKeyCode() == 80) {

if (flag % 2 == 1) {

time.stop();

}

if (flag % 2 == 0) {

time.start();

}

flag++;

}

}

});

}

public void paint(Graphics g) {

g.setColor(Color.WHITE);

g.fillRect(0, 0, 400, 400);

g.setColor(Color.DARK_GRAY);

g.drawLine(3, 3, 305, 3);

g.drawLine(3, 3, 3, 305);

g.drawLine(305, 3, 305, 305);

g.drawLine(3, 305, 305, 305);

g.setColor(Color.PINK);

for (int i = 0; i < listBody.size(); i++) {

g.fillRect(listBody.get(i).x, listBody.get(i).y, 9, 9);

}

g.fillRect(x, y, 9, 9);

g.setColor(Color.ORANGE);

g.fillRect(fx, fy, 9, 9);

g.setColor(Color.DARK_GRAY);

str1 = "现在的长度为:" + snakeBody;

g.drawString(str, 10, 320);

g.drawString(str1, 10, 335);

}

public void actionPerformed(ActionEvent e) {

x += dx;

y += dy;

if (makeOut() == false) {

JOptionPane.showMessageDialog(null, "重新开始......");

speed = 700;

snakeBody = 1;

x = 5;

y = 5;

list.clear();

list.add(new Point(x, y));

listBody.clear();

listBody.add(list.get(0));

dx = 10;

dy = 0;

}

addPoint(x, y);

if (x == fx && y == fy) {

speed = (int) (speed * 0.8);//速度增加参数

if (speed < 200) {

speed = 100;

}

fx = rand.nextInt(30) * 10 + 5;// 2

fy = rand.nextInt(30) * 10 + 5;// 2

snakeBody++;// 2

} // 2

repaint();

}

public void addPoint(int xx, int yy) {

// 动态的记录最新发生的50步以内的移动过的坐标

// 并画出最新的snakeBody

if (list.size() < 100) {//蛇身长度最长为100

list.add(new Point(xx, yy));

} else {

list.remove(0);

list.add(new Point(xx, yy));

}

if (snakeBody == 1) {

listBody.remove(0);

listBody.add(0, list.get(list.size() - 1));

} else {

listBody.clear();

if (list.size() < snakeBody) {

for (int i = list.size() - 1; i > 0; i--) {

listBody.add(list.get(i));

}

} else {

for (int i = list.size() - 1; listBody.size() < snakeBody; i--) {

listBody.add(list.get(i));

}

}

}

}

public boolean makeOut() {

if ((x < 3 || y < 3) || (x > 305 || y > 305)) {

return false;

}

for (int i = 0; i < listBody.size() - 1; i++) {

for (int j = i + 1; j < listBody.size(); j++) {

if (listBody.get(i).equals(listBody.get(j))) {

return false;

}

}

}

return true;

}

}

/*贪吃蛇代码*/

阅读更多 >>>  学什么语言编程挣钱

在哪里能下载到javaweb项目的源代码

非常多啊, 你说的虚拟社区本质上就是bbs的那些源码
直接springboot写或者springmvc+mybatis写也行
JavaEye:www.javaeye.com
CSDN:www.csdn.net
开源社区:http://sourceforge.net/

求一个javaweb邮件收发系统eclipse源代码,tomcat可以运行的。

package me.gacl.main;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class Sendmail {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
Properties prop = new Properties();
prop.setProperty("mail.host", "smtp.sohu.com");
prop.setProperty("mail.transport.protocol", "smtp");
prop.setProperty("mail.smtp.auth", "true");
//使用JavaMail发送邮件的5个步骤
//1、创建session
Session session = Session.getInstance(prop);
//开启Session的debug模式,这样就可以查看到程序发送Email的运行状态
session.setDebug(true);
//2、通过session得到transport对象
Transport ts = session.getTransport();
//3、使用邮箱的用户名和密码连上邮件服务器,发送邮件时,发件人需要提交邮箱的用户名和密码给smtp服务器,用户名和密码都通过验证之后才能够正常发送邮件给收件人。
ts.connect("smtp.sohu.com", "gacl", "邮箱密码");
//4、创建邮件
Message message = createSimpleMail(session);
//5、发送邮件
ts.sendMessage(message, message.getAllRecipients());
ts.close();
}
/**
* @Method: createSimpleMail
* @Description: 创建一封只包含文本的邮件
* @param session
* @return
* @throws Exception
*/
public static MimeMessage createSimpleMail(Session session)
throws Exception {
//创建邮件对象
MimeMessage message = new MimeMessage(session);
//指明邮件的发件人
message.setFrom(new InternetAddress("gacl@sohu.com"));
//指明邮件的收件人,现在发件人和收件人是一样的,那就是自己给自己发
message.setRecipient(Message.RecipientType.TO, new InternetAddress("gacl@sohu.com"));
//邮件的标题
message.setSubject("只包含文本的简单邮件");
//邮件的文本内容
message.setContent("你好啊!", "text/html;charset=UTF-8");
//返回创建好的邮件对象
return message;
}
}

求Java web增删改查 极简源码

//用户新增 public boolean addUser(Users user){ try { conn = ConnDB.getConnection(); String sql = "insert into tb_users values(default,?,?,?,?,?,?)"; System.out.println(sql); ps = conn.prepareStatement(sql); ps.setInt(1, user.getDepID()); ps.setString(2, user.getUserName()); ps.setString(3, user.getUserPwd()); ps.setString(4, user.getUserCode()); ps.setString(5, user.getUserSex()); ps.setInt(6, user.getUserAge()); if(ps.executeUpdate()==1){ return true; } } catch (Exception e) { e.printStackTrace(); } finally{//关闭当前页打开的相关对象 ConnDB.close(conn, ps, null); } return false; }//用户删除 public boolean delUser(int id){ try { conn = ConnDB.getConnection(); String sql = "delete from tb_users where id = ?"; System.out.println(sql); ps = conn.prepareStatement(sql); ps.setInt(1, id); if(ps.executeUpdate()==1){ return true; } } catch (Exception e) { e.printStackTrace(); } finally{//关闭当前页打开的相关对象 ConnDB.close(conn, ps, null); } return false; }//用户编辑 public boolean updateUser(Users user){ try { conn = ConnDB.getConnection(); String sql = "update tb_users set depID=?,userName=?,userPwd=?,userCode=?,userSex=?,userAge=? where id=?"; System.out.println(user.getDepID()+ user.getUserName()+user.getUserPwd()+user.getUserCode()+user.getUserSex()+user.getUserAge()+user.getId()); ps = conn.prepareStatement(sql); ps.setInt(1, user.getDepID()); ps.setString(2, user.getUserName()); ps.setString(3, user.getUserPwd()); ps.setString(4, user.getUserCode()); ps.setString(5, user.getUserSex()); ps.setInt(6, user.getUserAge()); ps.setInt(7, user.getId()); if(ps.executeUpdate()==1){ return true; } } catch (Exception e) { e.printStackTrace(); } finally{//关闭当前页打开的相关对象 ConnDB.close(conn, ps, null); } return false; }//根据id查询用户 public Users findAllUserById(int id){ Users u = null; DepDao depd = null; try { conn = ConnDB.getConnection(); String sql = "select * from tb_users where id=?"; System.out.println(sql); ps = conn.prepareStatement(sql); ps.setInt(1, id); rs = ps.executeQuery(); if(rs.next()){ depd = new DepDao(); Department dep = depd.findAllDepById(rs.getInt("depID")); System.out.println(dep.getDepName()); u = new Users(); u.setId(rs.getInt("id")); u.setDepID(rs.getInt("depID")); u.setUserName(rs.getString("userName")); u.setUserPwd(rs.getString("userPwd")); u.setUserCode(rs.getString("userCode")); u.setUserSex(rs.getString("userSex")); u.setUserAge(rs.getInt("userAge")); u.setDep(dep); } } catch (Exception e) { e.printStackTrace(); } finally{//关闭当前页打开的相关对象 ConnDB.close(conn, ps, rs); } return u; }这是我在dao层写的代码,都调用了ConnDB这个类,这个类完成了驱动的注册,及连接数据库的功能,代码如下:
package com.asjy.util;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class ConnDB { private static String url = "jdbc:mysql://localhost:3306/news"; private static String user = "root"; private static String pass = "root"; //1.加载驱动 static{ try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { System.out.println("驱动加载失败"); } } //2.建立数据库连接对象 public static Connection getConnection() throws Exception{ return DriverManager.getConnection(url,user,pass); } //3.关闭数据库 public static void close(Connection conn,Statement ps,ResultSet rs){ try { if(rs!=null){ rs.close(); rs = null; } if(ps!=null){ ps.close(); ps = null; } if(conn!=null){ conn.close(); conn = null; } } catch (SQLException e) { e.printStackTrace(); } }}

阅读更多 >>>  程序员培训一般多少钱,java培训班学费一般多少

求JAVA小项目的完整代码

给你个做好了的Java的源程序的记事本,自己看看就行了的,不怎么难的···
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class MyNotepad implements ActionListener{
private JFrame frame=new JFrame("新记事本");
private JTextArea jta=new JTextArea();
private String result="";
private boolean flag=true;
private File f;
private JButton jb=new JButton("开始");
private JTextField jtf=new JTextField(15);
private JTextField jt=new JTextField(15);
private JButton jbt=new JButton("替换为");
private JButton jba=new JButton("全部替换");
private Icon ic=new ImageIcon("D:\\java课堂笔记\\GUI\\11.gif");
private String value;
private int start=0;
private JFrame jf=new JFrame("查找");
private JFrame jfc=new JFrame("替换");
@Override
public void actionPerformed(ActionEvent e) {
String comm=e.getActionCommand();
if("新建".equals(comm)){
if(!(frame.getTitle().equals("新记事本"))){
if(!flag){
write();
newNew();
}else{
JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");
int returnVal = jfc.showDialog(null,"保存为");
if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性
f=jfc.getSelectedFile();
flag=false;
write();
}
}
}else if(!(jta.getText().isEmpty())){
JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");
int returnVal = jfc.showDialog(null,"保存为");
if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性
f=jfc.getSelectedFile();
flag=false;
write();
newNew();
}
}else{
newNew();
}
}else if("打开".equals(comm)){
JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");
jfc.setDialogType(JFileChooser.OPEN_DIALOG);
int returnVal = jfc.showOpenDialog(null);
if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性
f=jfc.getSelectedFile();
frame.setTitle(f.getName());
result=read();
flag=false;
value=result;
jta.setText(result);
}
}else if("保存".equals(comm)){
JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");
if(flag){
int returnVal = jfc.showDialog(null,"保存为");
if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性
f=jfc.getSelectedFile();
flag=false;
write();
}
}else{
write();
}
}else if("另存".equals(comm)){
JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");
int returnVal = jfc.showDialog(null,"另存");
if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性
f=jfc.getSelectedFile();
write();
}
}else if("退出".equals(comm)){
System.exit(0);
}else if("撤销".equals(comm)){
jta.setText(value);
}else if("剪切".equals(comm)){
value=jta.getText();
jta.cut();
}else if("复制".equals(comm)){
jta.copy();
}else if("粘贴".equals(comm)){
value=jta.getText();
jta.paste();
}else if("删除".equals(comm)){
value=jta.getText();
jta.replaceSelection(null);
}else if("全选".equals(comm)){
jta.selectAll();
}else if("查找".equals(comm)){
value=jta.getText();
jf.add(jtf,BorderLayout.CENTER);
jf.add(jb,BorderLayout.SOUTH);

jf.setLocation(300,300);
jf.pack();
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}else if("替换".equals(comm)){
value=jta.getText();
GridLayout gl=new GridLayout(3,3);
JLabel jl1=new JLabel("查找内容:");
JLabel jl2=new JLabel("替换为:");
jfc.setLayout(gl);
jfc.add(jl1);
jfc.add(jtf);
jfc.add(jb);
jfc.add(jl2);
jfc.add(jt);
jfc.add(jbt);
JLabel jl3=new JLabel();
JLabel jl4=new JLabel();
jfc.add(jl3);
jfc.add(jl4);
jfc.add(jba);

jfc.setLocation(300,300);
jfc.pack();
jfc.setVisible(true);
jfc.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}else if("版本".equals(comm)){
JDialog jd=new JDialog(frame,"关于对话框");
jd.setSize(200,200);
JLabel l=new JLabel("哈哈哈哈哈哈哈哈哈哈呵呵呵呵呵呵呵呵呵呵呵呵呵");
jd.add(l,BorderLayout.CENTER);
jd.setLocation(100,200);
jd.setSize(300,300);
jd.setVisible(true);
// jd.pack();
jd.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
}else if("开始".equals(comm)||"下一个".equals(comm)){
String temp=jtf.getText();
int s=value.indexOf(temp,start);
if(value.indexOf(temp,start)!=-1){
jta.setSelectionStart(s);
jta.setSelectionEnd(s+temp.length());
jta.setSelectedTextColor(Color.GREEN);
start=s+1;
jb.setText("下一个");
// value=value.substring(s+temp.length());//不能截取字串
}else {
JOptionPane.showMessageDialog(jf, "查找完毕!", "提示", 0, ic);
jf.dispose();
}
}else if("替换为".equals(comm)){
String temp=jtf.getText();
int s=value.indexOf(temp,start);
if(value.indexOf(temp,start)!=-1){
jta.setSelectionStart(s);
jta.setSelectionEnd(s+temp.length());
jta.setSelectedTextColor(Color.GREEN);
start=s+1;
jta.replaceSelection(jt.getText());
}else {
JOptionPane.showMessageDialog(jf, "查找完毕!", "提示", 0, ic);
jf.dispose();
}
}else if("全部替换".equals(comm)){
String temp=jta.getText();
temp=temp.replaceAll(jtf.getText(), jt.getText());
jta.setText(temp);

}
}
public String read(){
String temp="";
try {
FileInputStream fis = new FileInputStream(f.getAbsolutePath());
byte[] b=new byte[1024];
while(true){
int num=fis.read(b);
if(num==-1)break;
temp=temp+new String(b,0,num);
}
fis.close();
} catch (Exception e1) {
e1.printStackTrace();
}
return temp;
}

public void write(){
try {
FileOutputStream fos=new FileOutputStream(f);
fos.write(jta.getText().getBytes());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public void newNew(){
frame.dispose();
new MyNotepad();
flag=true;
}
public MyNotepad(){
JMenuBar jmb=new JMenuBar();
String[] menuLab={"文件","编辑","帮助"};
String[][] menuItemLab={{"新建","打开","保存","另存","退出"},
{"撤销","剪切","复制","粘贴","删除","全选","查找","替换"},
{"版本"}};
for(int i=0;i
<menulab.length;i++){
JMenu menu=new JMenu(menuLab[i]);

jmb.add(menu);

for(int j=0;j
<menuitemlab[i].length;j++){
JMenuItem jmi=new JMenuItem(menuItemLab[i][j]);

menu.add(jmi);

jmi.addActionListener(this);

}

}

frame.setJMenuBar(jmb);

jta.setLineWrap(true);//自动换行

JScrollPane jsp=new JScrollPane(jta);//滚动窗口面板

frame.add(jsp);

jb.addActionListener(this);

jbt.addActionListener(this);

jba.addActionListener(this);

frame.setLocation(200,50);

frame.setSize(620,660);

frame.setVisible(true);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String[] args) {

new MyNotepad();

}

}
</menuitemlab[i].length;j++){
</menulab.length;i++){

跪求高清 Java Web开发实例大全(基础卷),帮一下!急需教材!求!

Java Web开发实例大全(基础卷)百度网盘在线观看资源,免费分享给您:
https://pan.baidu.com/s/1U8mH8H6U44UHST2NbfwPmw
《Java Web开发实例大全(基础卷)》筛选、汇集了Java Web开发从基础知识到高级应用各个层面约600个实例及源代码,每个实例按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进行了分析解读。全书分为6篇23章,主要内容有开发环境搭建、Java语言基础、HTML/CSS技术、JSP基础与内置对象、JavaBean技术、Servlet技术、过滤器与监听器技术、JSTL标签库、JavaScript技术、Ajax技术、文件基本操作及文件上传下载、文件的批量管理、图像生成、图像操作、多媒体应用、窗口的应用、导航条的应用、表单的应用、表格的操作、JSP操作Word、JSP操作Excel、报表与打印、综合应用等。配书光盘附有实例源代码及部分讲解视频。

怎样在Eclipse中快速查看各种源代码

打开eclipse,建立项目:Test,将struts2相关jar包导入到其中。在Package Explorer标签栏下操作。
如下图:
在此,以查阅struts2中,struts2-core-2.3.12.jar下的源代码为例。
在Test项目下,找到 Web App Libraries -- struts2-core-2.3.12.jar,右键单击struts2-core-2.3.12.jar,选择"Properties"
如下图:
在新弹出的对话框中,选择Java Source Attachment -- External location -- External Floder...
如下图:
此时,又有新的对话框弹出。找到步骤1中提到的struts2-core-2.3.12.jar的源代码在硬盘中的位置,然后单击“确定”,回到上对话框,确定信息无误后,点击“OK”
此时,源代码就成功和Eclipse建立连接了。
接着,要在Eclipse中查阅某一类的源代码,方法很多,在此,小编只介绍一种相对快捷的方法。
按住键盘“Ctrl键”,用鼠标碰触到某一个你调用的类,单击左键,源代码就出来了。

java 项目怎么调用.net写的webService,求源码。

用Axis组件,按照相应的WSDL文件生成框架之后填写功能即可。
发布.net webservice得到wsdl地址:(你的)http://222.92.47.171:8003/SZDataExchange/SZDataExchange.asmx?wsdl
根据wsdl2java工具包生成对应java客户端
可以自己加批处理如下
set Axis_Lib=.\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=.\source
set Package= com.msclient
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% http://localhost:8987/Service1.asmx?WSDL
生成客户端java类如下(CallService是我写的调用测试类,可忽略)
有了客户端就可以像调用本地方法一样调用webservice服务方法了,具体代码如下:
public static void main(String[] args) throws ServiceException, RemoteException { // TODO Auto-generated method stub Service1 _Service1 = new Service1Locator(); Service1Soap_PortType _Service1Soap_PortType; String resultStr = null; _Service1Soap_PortType = _Service1.getService1Soap(); resultStr = _Service1Soap_PortType.helloWorld("zybaby"); System.out.println(resultStr); }

网站数据信息

"javaweb完整项目源码,求Java web增删改查 极简源码"浏览人数已经达到21次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:javaweb完整项目源码,求Java web增删改查 极简源码的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!