文档章节

Java Web--增删改查之二界面后台java代码

拯救世界的小安安
 拯救世界的小安安
发布于 2014/06/16 09:26
字数 1117
阅读 9298
收藏 6

上次我们已经搞完了jsp的操作。现在该是后台的配置了。

在dao包里面进行数据链接:DBConn.java

/**
 * 
 */
/**
 * @author Administrator
 *
 */
package dao;

import java.sql.*;
public class DBConn {
	/**
	 * 链接数据库
	 * @return
	 */
     public static Connection getConnection(){
    	 Connection conn=null;
    	 try {
		    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		    conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DataBaseName=EstateDB","sa","123456");
		} catch (Exception e) {
			e.printStackTrace();
		}
		 return conn;
     }
}

BuildingDao.java

package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import entity.Building;




public class BuildingDao {
  /**
   * 操作数据库命令链接
   * 数据访问类
   */
	private Connection conn;
	private Statement state;
	private ResultSet rs;
	private PreparedStatement pre;
	/**
	 * 查询全部
	 * @return
	 * @throws SQLException
	 */
	public List<Building> fill() throws SQLException {
		List<Building> list = new ArrayList<Building>();
		String sql = "select * from T_building";
		conn = DBConn.getConnection();
		state = conn.createStatement();
		rs = state.executeQuery(sql);
		Building p = null;
		while (rs.next()) {
			p = new Building();				
			p.setId(rs.getString("Id"));
			p.setCompany(rs.getString("Company"));
			p.setPhone(rs.getString("Phone"));
			p.setDescription(rs.getString("Description"));
			p.setStatus(rs.getString("Status"));
			list.add(p);
		}
		rs.close();
		state.close();
		conn.close();
		return list;
	}
	/**
	 * 根据Id查询
	 * @param Id
	 * @return
	 * @throws SQLException
	 */
public Building fill(String Id) throws SQLException{
		
		conn = DBConn.getConnection();
		String sql="select * from T_building where Id=?";
		pre = conn.prepareStatement(sql);
		pre.setString(1, Id);
		rs=pre.executeQuery();
		Building p = null;
		if(rs.next()){
			p = new Building();				
			p.setId(rs.getString("Id"));
			p.setCompany(rs.getString("Company"));
			p.setPhone(rs.getString("Phone"));
			p.setDescription(rs.getString("Description"));
			p.setStatus(rs.getString("Status"));
		}
		rs.close();
		pre.close();
		conn.close();
		return p;
	}
/**
 * 添加
 * @param building
 * @return
 * @throws SQLException
 */
	public int add(Building building) throws SQLException {

		String sql = "insert  T_building values ('" + building.getId() + "','"
				+ building.getCompany() + "','" + building.getPhone() + "','"
				+ building.getDescription() + "','" + building.getStatus()
				+ "')";
		System.out.println(sql);
		conn = DBConn.getConnection();
		state = conn.createStatement();		
		int result = state.executeUpdate(sql);
		state.close();
		conn.close();
		return result;

	}
	/**
	 * 修改
	 * @param building
	 * @return
	 * @throws SQLException
	 */
	public int  update(Building  building) throws SQLException {
		String sql="UPDATE T_building SET Company=?,Phone =?,"+"Description=?, Status=? WHERE Id=?";
		conn=DBConn.getConnection();
		pre = conn.prepareStatement(sql);
		pre.setString(1,  building.getCompany());
		pre.setString(2,  building.getPhone());
		pre.setString(3,  building.getDescription());
		pre.setString(4,  building.getStatus());
		pre.setString(5,  building.getId());
		int count=pre.executeUpdate();
		pre.close();
		conn.close();
		return count;		
		// TODO Auto-generated method stub
		
	}
/**
 * 根据ID删除一项
 * @param Id
 * @throws SQLException
 */
	public void  delete(String Id) throws SQLException {
		String sql="delete from  T_building where  Id=?";
		conn=DBConn.getConnection();
		pre = conn.prepareStatement(sql);
		pre.setString(1,Id);
		pre.executeUpdate();
		pre.close();
		conn.close();				
		// TODO Auto-generated method stub		
	}
	/**
	 * 多项选择Id删除
	 * @param Id
	 * @throws SQLException
	 */
	public void  delete(String[] Id) throws SQLException {
		conn = DBConn.getConnection();
		String ids="'"+Id[0]+"'";
		for(int i=1;i<Id.length;i++) {
			ids=ids+",'"+Id[i]+"'";
		}
		String sql="delete from  T_building where  Id  in ("+ids+")";
		pre = conn.prepareStatement(sql);		
		pre.executeUpdate();
		pre.close();
		conn.close();				
		// TODO Auto-generated method stub		
	}
}

对啦,忘记创建实体类了。在entity包里面建实体类

Building.java

/**
 * 
 */
/**
 * @author Administrator
 *
 */
package entity;
public class Building {
	/**
	 * 实体类
	 * 定义get ,set 属性
	 */
    private String Id;
    private String Company;
    private String Phone;
    private String Description;
    private String Status;
	public String getId() {
		return Id;
	}
	public void setId(String id) {
		Id = id;
	}
	public String getCompany() {
		return Company;
	}
	public void setCompany(String company) {
		Company = company;
	}
	public String getPhone() {
		return Phone;
	}
	public void setPhone(String phone) {
		Phone = phone;
	}
	public String getDescription() {
		return Description;
	}
	public void setDescription(String description) {
		Description = description;
	}
	public String getStatus() {
		return Status;
	}
	public void setStatus(String status) {
		Status = status;
	}
	
    
}

service服务

BuildingService.java

/**
 * 
 */
/**
 * @author Administrator
 *
 */
package service;

import java.sql.SQLException;
import java.util.List;

import dao.BuildingDao;
import entity.Building;


public class BuildingService{
	/**
	 * 添加
	 * @param building
	 * @return
	 * @throws SQLException
	 */
	public int add(Building building) throws SQLException {
		BuildingDao dao=new BuildingDao();
		return dao.add(building);			
	}
	/**
	 * 查询
	 * @return
	 * @throws SQLException
	 */
	public  List<Building>  fill() throws SQLException{
		BuildingDao dao=new BuildingDao();	
		return dao.fill();
	}
	public  Building  fill(String  Id) throws SQLException{
		BuildingDao dao=new BuildingDao();	
		return dao.fill(Id);
	}
	/**
	 * 修改
	 * @param building
	 * @return
	 * @throws SQLException
	 */
	public int update(Building building) throws SQLException{
		BuildingDao dao=new BuildingDao();
		return dao.update(building);		
	}
	/**
	 *  删除
	 * @param Id
	 * @throws SQLException
	 */
	public void delete(String Id) throws SQLException{
		BuildingDao dao=new BuildingDao();
		 dao.delete(Id);;	
	}
	
	public void delete(String[] Id) throws SQLException {
		BuildingDao dao=new BuildingDao();
		dao.delete(Id);
	}
}

在action包里建servlet

BuildingServlet.java

/**
 * 
 */
/**
 * @author Administrator
 *
 */
package action;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.swing.JApplet;
import service.BuildingService;
import entity.Building;


public class BuildingServlet extends javax.servlet.http.HttpServlet implements
		javax.servlet.Servlet {

	static final long serialVersionUID = 1L;

	public BuildingServlet() {
		super();
	}

	@Override
	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub

		response.setCharacterEncoding("utf-8");
		try {
			start(request, response);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

	@Override
	protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		request.setCharacterEncoding("utf-8");
		try {
			start(request, response);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

	private void start(HttpServletRequest request, HttpServletResponse response)
			throws Exception {

		response.setCharacterEncoding("GBK");
		response.setContentType("text/html;charset=utf-8");
		BuildingService service = new BuildingService();
		String action = request.getParameter("action");
		String id = request.getParameter("id");
		/**
		 * 添加
		 */
		if (action.equals("add")) {
			response.setContentType("text/html;charset=utf-8");
			String Id = request.getParameter("Id");
			String Company = request.getParameter("Company");
			String Phone = request.getParameter("Phone");
			String Description = request.getParameter("Description");
			String Status = request.getParameter("Status");
			Building b = new Building();
			b.setId(Id);
			b.setCompany(Company);
			b.setPhone(Phone);
			b.setDescription(Description);
			b.setStatus(Status);
			BuildingService buildingService = new BuildingService();
			try {
				buildingService.add(b);
				PrintWriter out = response.getWriter();
				out.print("添加成功");
			} catch (SQLException e) {
				PrintWriter out = response.getWriter();
				out.print("添加失败");
				e.printStackTrace();
			}
		}
		/**
		 * 查詢
		 */
		else if (action.equals("list")) {
					try {
							List<Building> buildingList = service.fill();
							request.setAttribute("buildingList", buildingList);
							request.getRequestDispatcher("buildingList.jsp").forward(
									request, response);
						} catch (Exception e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
				} else if (action.equals("list2")) {
					String id1 = request.getParameter("id");
					try {
							Building building = service.fill(id1);
							request.setAttribute("building", building);
							request.getRequestDispatcher("buildingList.jsp").forward(
									request, response);
						} catch (Exception e) {
							e.printStackTrace();
						}
				}
		/**
		 * 修改
		 */				
				else if (id != null&&action.equals("update")) {
							try {
									Building building = service.fill(id);
									request.setAttribute("building", building);
									request.getRequestDispatcher("buildingUpdate.jsp").forward(
											request, response);
								} catch (Exception e) {
									e.printStackTrace();
								}
						} else if(action.equals("update2")){
								String Id = request.getParameter("Id");
								String Company = request.getParameter("Company");
								String Phone = request.getParameter("Phone");
								String Description = request.getParameter("Description");
								String Status = request.getParameter("Status");
								Building b = new Building();
								b.setId(Id);
								b.setCompany(Company);
								b.setPhone(Phone);
								b.setDescription(Description);
								b.setStatus(Status);
								BuildingService buildingService = new BuildingService();
								try {
										buildingService.update(b);
										PrintWriter out = response.getWriter();
										out.print("修改成功");
										
									} catch (Exception e) {
										// TODO Auto-generated catch block
										e.printStackTrace();
									}				
						}
		/**
		 * 删除
		 */
					 if(action.equals("delete")) {
						 try {							
							List<Building> buildingDelete = service.fill();
							request.setAttribute("buildingDelete", buildingDelete);
							request.getRequestDispatcher("buildingDelete.jsp").forward(
									request, response);
						} catch (Exception e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
					  }
					  else if(action.equals("delete2")) {
						  String[] ids=request.getParameterValues("Id");
						 // String id1=request.getParameter("id");
						  try {
							//service.delete(id1);
							service.delete(ids);
							  response.sendRedirect("BuildingServlet?action=delete");
						} catch (Exception e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
					  }
					  else if(action.equals("delete3")) {						  
						  String id1=request.getParameter("id");
						  try {							
							service.delete(id1);
							  response.sendRedirect("BuildingServlet?action=delete");
						} catch (Exception e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
					  }
					
			}
}


© 著作权归作者所有

共有 人打赏支持
上一篇: mac下安装PHP
下一篇: 单例模式
拯救世界的小安安
粉丝 5
博文 31
码字总数 30593
作品 0
徐汇
程序员
私信 提问
能否将Jfinal再简化一些?

@JFinal 你好,想跟你请教个问题:有一事请教,JFinal要对数据库中的每张表生成一个controler(或者是做成model),每个类几乎一模一样,又要为每张表做增删改查的界面,如果你有100张表就要...

hyhdl888
2015/03/19
1K
19
基于 Java 的 CMS 解决方案 - tjpcms

官网:http://www.tjpcms.com tjpcms 是一套基于 Java 的 CMS 解决方案,开源免费。其独有的实时配置增删改查的功能,是其区别于同类 cms 的最大特点,也是最大优势,极大减少了重复劳动。懂...

金盆洗手
2017/01/12
0
6
【Java学习路线】新手该如何一步步的学习 Java

新手该如何一步步的学习 Java? 如果真的想学Java,最好要循序渐进,有章有法的学习它! 今天小慕就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容。 首先,给大家分享一张以 企业...

Eddie_yang
11/15
131
0
职业生涯规划的问题

现在刚出来参加工作一个多月,进了一家小公司,现在公司主要使用的框架是自己封装好的,对于后台的java代码都已经封装好,我们这些刚进公司的是没有权利去看源代码的,我现在的主要工作就是使...

Vincent109
2013/05/19
712
6
新一代的Web应用快速开发平台--OpenJWeb

新一代的Web应用快速开发平台--OpenJWeb “当其他单位在为投标紧张地制作Demo和需求原型的时候,我们已经把功能做出来了。” ---- 一位使用OpenJWeb的用户的感言。 OpenJWeb是一款基于Java语...

迷途d书童
2012/03/09
200
0

没有更多内容

加载失败,请刷新页面

加载更多

数据集汇总

1.朝鲜语,英语混合数据集 http://www.iapr-tc11.org/mediawiki/index.php/KAIST_Scene_Text_Database 2.OCR资源博客 https://github.com/tangzhenyu/Scene-Text-Understanding 3.阿拉伯语英......

clgo
9分钟前
0
0
Linux时间同步方式

https://blog.csdn.net/sunny_future/article/details/78279726

呼呼南风
10分钟前
1
0
Hashtable程序员面试五分钟被请出来了

你们可能会想,栈长这么菜的吗?5分钟都坚持不了? 本文说起来会有点尴尬,毕竟这是栈长我曾经经历过的故事。。。 那时候的栈长还真菜,每天写着 if/ for 及一些简单的业务逻辑代码,虽工作有...

金铭鼎IT教育
13分钟前
2
0
Docker安装rabbitmq

安装rabbitmq,要先安装erlang,有点麻烦,如果使用Docker方式来安装rabbitmq,那就不需要预先安装erlang了。 1、下载rabbitmq镜像 List-1 在docker hub上rabbitmq的tag很多,但是我们使用3...

克虏伯
13分钟前
1
0
架构师究竟要不要写代码?

Talk is cheap, show me the code! 但是在互联网企业中,身处技术要职的架构师到底需不需要写代码? 在我们的专业领域中有一种普遍存在的误解:架构师的工作不需要写代码。 就目前看来这似乎...

我的卡
16分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部