栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

简单的Java web项目(mysql+jsp可实现增删改查)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

简单的Java web项目(mysql+jsp可实现增删改查)

1.创建数据库:

用户名:root;

密码:123456;(如果密码为空或是其他密码,则需要修改密码。)

数据库名:mydb,共两张表。

字符集为utf-8,一般在字符集最后一个。

表一:userinfo(类型为:id,username,pswd)为用户登录数据库。

表二:product(类型为:proid,proname,proprice,proaddress,proimage)为系统信息数据库。

 userinfo表结构如下:(注意:必须勾选自动递增选项,否则无法注册成功)

 product表结构如下:

 2.MyEclipse(ruanjianProject)工程项目目录:

配置:Tomcat8.5和jdk1.8以上

注意:要先创建lib文件夹,再进行导包。

1.commons-fileupload-1.3.1

2.commons-io-2.4

3.mysql-connector-java-5.1.7-bin

4.servlet-2_5-api

最后右击/Build path/奶瓶形状(默认为第一个),则会生成Web App Libraries

 --------------------------------------------------------------------------------------------------------------------------------

(需要压缩包或者文本格式请联系楼主,楼主看到会一一回复)

1>index.jsp:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>




  
  
  软件201班学生身份信息系统欢迎您
			
		
			body
			{
				margin: 5px;
				background-color: beige;
				font-size: 15px;
			}
			img
			{
				width: 200px;
				margin: 5px;
				float: left;
			}
			span
			{
				font-family: 隶书;
				font-size: 100px;
				float: center;
				margin: 3px;
			}				
			
			
			
	软件201班

软件201班学生身份信息系统欢迎你!
用户名:
密 码:

 2. register.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>



  
  
			
		
			body
			{
				margin: 5px;
				background-color: #ffcc99;
				font-size: 15px;
			}			
		
    
    
    注册新用户
    
	
	
	    
	
	
	


  
  
  
       
   
用户注册
用户名: 必须填写!
密 码: 必须填写!

3.main.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="com.util.*" %>
<%@ page import="com.product.*" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
String username = (String)session.getAttribute("username");
List> list =(List>) request.getAttribute("listProduct");
DividePage dividePage = (DividePage) request.getAttribute("dividePage");
String productName = (String) request.getAttribute("productName");
if(list==null){
	ProductService service = new ProductDao();
	int totalRecord = service.getItemCount("");
	dividePage = new DividePage(5,totalRecord,1);
	int start = dividePage.fromIndex();
	int end = dividePage.toIndex();
	list = service.listProduct("", start, end);
}
	
%>



  
  
			
		
			body
			{
				margin: 5px;
				background-color: #ffccff;
				font-size: 15px;
			}			
		
    
    
    信息收集
    
	
	
	    
	
	
	
	

  
  
  
   
   
欢迎来到软件201班学生身份信息系统,<%=username%>
退出
身份信息查询
姓名 "/>
查询结果
<% if(list!=null && !list.isEmpty()){ for(Map map :list){%> <%} }else{%> <% } %>
姓名 学号 联系方式
"/> <%=map.get("proname") %> <%=map.get("proaddress") %> <%=map.get("proprice") %>
共<%=dividePage.getPageCount() %>页 首页 上一页 下一页 尾页 跳转到

4.addProduct.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>



  
  
			
		
			body
			{
				margin: 5px;
				background-color: #ccffff;
				font-size: 15px;
			}			
			
	新增信息
	
	
	
		
	
	
	

  
  
  
	
	
		
学生信息添加
姓名 学号
联系方式
一寸蓝底照

5. viewProduct.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
Map map = (Map)request.getAttribute("productMap");

%>



  
  
			
		
			body
			{
				margin: 5px;
				background-color: #ccffcc;
				font-size: 15px;
			}			
		
    
    
    查看信息
    
	
	
	    
	
	
	

  
  
  
  
  		
  		
学生信息
姓名 <%=map.get("proname") %> 学号 <%=map.get("proprice") %>
联系方式 <%=map.get("proaddress") %>
一寸蓝底照 /upload/<%=map.get("proimage") %>">

6.LoginAction.java

package com.login;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class LoginAction extends HttpServlet {

	private LoginService service;

	public LoginAction() {
		super();
	}

	public void destroy() {
		super.destroy(); // Just puts "destroy" string in log
		// Put your code here
	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		this.doPost(request, response);
		
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		response.setContentType("text/html;charset=utf-8");
		PrintWriter out = response.getWriter();
		
		String path = request.getContextPath();
		String username = request.getParameter("username");
		String pswd = request.getParameter("pswd");
		
		List params = new ArrayList();
		params.add(username);
		params.add(pswd);
		boolean flag = service.login(params);
		
		if (flag) {
			
			request.getSession().setAttribute("username", username);
			response.sendRedirect(path+"/main.jsp");
		}else{
						
			response.sendRedirect(path+"/index.jsp");
		}
		
		
		
		
		out.flush();
		out.close();
	}

	public void init() throws ServletException {
		// Put your code here
		service = new LoginDao();
	}

} 

7.LoginDao.java

package com.login;

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

import javax.mail.Flags.Flag;

import com.jdbc.JdbcUtils;

public class LoginDao implements LoginService {

	private JdbcUtils jdbcUtils;
	public LoginDao() {
		// TODO Auto-generated constructor stub
		jdbcUtils = new JdbcUtils();
	}

	public boolean login(List params) {
		// TODO Auto-generated method stub
		boolean flag = false;
		
		try {
			jdbcUtils.getConnection();
			String sql = "select * from userinfo where username = ? and pswd = ?";
			Map map = jdbcUtils.findSimpleResult(sql, params);
			flag = !map.isEmpty()?true:false;			
			
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}finally{
			
		jdbcUtils.releaseConn();
			
		}
		
		return flag;
	}	

} 

8.LoginService.java

package com.login;

import java.util.List;

public interface LoginService {

	public boolean login(List params);
} 

9. MyFilter.java

package com.filter;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class MyFilter implements Filter {

	public MyFilter() {
		// TODO Auto-generated constructor stub
	}

	public void destroy() {
		// TODO Auto-generated method stub

	}

	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain filterChain) throws IOException, ServletException {
		HttpServletRequest httpServletRequest = (HttpServletRequest)request;
		HttpServletResponse httpServletResponse = (HttpServletResponse)response;
		
		httpServletRequest.setCharacterEncoding("utf-8");
		httpServletResponse.setCharacterEncoding("utf-8");
		
		String username = (String)httpServletRequest.getSession().getAttribute("username");
		
		if (username == null) {
			String path = httpServletRequest.getContextPath();
			httpServletResponse.sendRedirect(path+"/index.jsp");
		}		
		filterChain.doFilter(httpServletRequest, httpServletResponse);
	}

	public void init(FilterConfig arg0) throws ServletException {
		// TODO Auto-generated method stub

	}

}

10.RegisterAction.java

package com.register;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;



public class RegisterAction extends HttpServlet {	
	
	private RegisterService service;

	public RegisterAction() {
		super();
	}


	public void destroy() {
		super.destroy(); // Just puts "destroy" string in log
		// Put your code here
	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		this.doPost(request, response);
		
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		response.setContentType("text/html;charset=utf-8");
		PrintWriter out = response.getWriter();
		String path = request.getContextPath();
		
		String username = request.getParameter("username");
		String pswd = request.getParameter("pswd");
		
		List params = new ArrayList();
		params.add(username);
		params.add(pswd); 	
		boolean flag = service.registerUser(params);
		if (flag) {
			response.sendRedirect(path+"/index.jsp");
		}
		
		
		
		out.flush();
		out.close();
	}


	public void init() throws ServletException {
		// Put your code here
		service = new RegisterDao();
	}

} 

11. RegisterDao.java

package com.register;

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

import com.jdbc.JdbcUtils;

public class RegisterDao implements RegisterService {

	private JdbcUtils jdbcUtils;
	public RegisterDao() {
		// TODO Auto-generated constructor stub
		jdbcUtils = new JdbcUtils();
	}


	public boolean registerUser(List params) {
		// TODO Auto-generated method stub
		boolean flag = false;
		try {
			jdbcUtils.getConnection();
			String sql = "insert into userinfo(username,pswd) values(?,?)";			
			flag = jdbcUtils.updateByPreparedStatement(sql, params);
			
			
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}finally{
		
			jdbcUtils.releaseConn();
			
		}
		
		
		return flag;
	}

} 

12. RegisterService.java

package com.register;

import java.util.List;

public interface RegisterService {
	
	public boolean registerUser(List params);
} 

13. ProductAction.java

package com.product;

import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.UUID;

import javax.servlet.GenericServlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;


import com.util.DividePage;
import com.util.UUIDTools;

public class ProductAction extends HttpServlet {

	private ProductService service;

	public ProductAction() {
		super();
	}


	public void destroy() {
		super.destroy(); // Just puts "destroy" string in log
		// Put your code here
	}


	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		this.doPost(request, response);
	}


	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		response.setContentType("text/html;charset=utf-8");
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
		PrintWriter out = response.getWriter();
		
		String action_flag = request.getParameter("action_flag");
		if (action_flag.equals("add")) {
			addProduct(request,response);
		}else if (action_flag.equals("search")) {
			listProduct(request,response);
		}else if (action_flag.equals("del")) {
			delProduct(request,response);
		}else if (action_flag.equals("view")) {
			viewProduct(request,response);
		}
		
		
		out.flush();
		out.close();
	}

	private void viewProduct(HttpServletRequest request,
			HttpServletResponse response) {
		// TODO Auto-generated method stub
		String proid = request.getParameter("proid");
		Map map = service.viewProduct(proid);
		request.setAttribute("productMap", map);
		try {
			request.getRequestDispatcher("/viewProduct.jsp").forward(request, response);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} 
		
	}


	private void delProduct(HttpServletRequest request,
			HttpServletResponse response) {
		// TODO Auto-generated method stub
		
		System.out.println("进入del");
		String[] ids = request.getParameterValues("ids");
		for (int i = 0; i < ids.length; i++) {
			System.out.println("ids["+i+"]="+ids[i]);
		}
		boolean flag = service.delProduct(ids);
		System.out.println("删除flag:"+flag);
		if (flag) {
			try {
				request.getRequestDispatcher("/main.jsp").forward(request, response);
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}		
	}

	private void listProduct(HttpServletRequest request,
			HttpServletResponse response) {
		// TODO Auto-generated method stub
		
		String productName = request.getParameter("proname");	
		String pageNum = request.getParameter("pageNum");
		System.out.println("参数 pageNum :"+pageNum);
		if (productName == null) {
			productName = "";
		}
		
		
		
		int totalRecord = service.getItemCount(productName);
		int currentPage = 1;
		DividePage dividePage = new DividePage(5, totalRecord);
		if (pageNum != null) {
			
			
			currentPage = Integer.parseInt(pageNum);
			
			dividePage.setCurrentPage(currentPage);
		}
		
		int start = dividePage.fromIndex();
		int end = dividePage.toIndex();		
		
		System.out.println("currentPageNum :"+ dividePage.getCurrentPage() +", start = "+start +", end = "+end);
		
		List> list = null;
		try {
			list = service.listProduct(productName , start , end);
			request.setAttribute("listProduct", list);
			request.setAttribute("dividePage", dividePage);
			request.setAttribute("productName",productName );
			request.getRequestDispatcher("/main.jsp").forward(request, response);
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}		
		
	}

	private void addProduct(HttpServletRequest request, HttpServletResponse response) 
			throws ServletException, IOException{
		String  path = request.getContextPath();		
		DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
		ServletFileUpload servletFileUpload = new ServletFileUpload(diskFileItemFactory);
		servletFileUpload.setFileSizeMax(3*1024*1024);
		servletFileUpload.setSizeMax(6*1024*1024);
		List list = null;		
		List params = new ArrayList();
		params.add(UUIDTools.getUUID());
		try {
			list = servletFileUpload.parseRequest(request);				
			for(FileItem fileItem : list){
				if (fileItem.isFormField()) {
					String fileItemName = fileItem.getFieldName(); 
					String fileItemValue = fileItem.getString("utf-8");
					if (fileItemName.equals("proname")) {
						params.add(fileItemValue); 
					}else if (fileItemName.equals("proprice")) {
						params.add(fileItemValue);
					}else if (fileItemName.equals("proaddress")) {
						params.add(fileItemValue);
					}					
				}else{				
					
					String imageName = fileItem.getName(); 
					params.add(imageName);			
					//String path = request.getRealPath("/upload");
					String upload_dir = ((GenericServlet) request).getServletContext().getRealPath("/upload");
					File uploadFile = new File(upload_dir+"/"+imageName);
					System.out.println("---upload_dir--->>"+uploadFile);
					fileItem.write(uploadFile);						
				}				
			}

			boolean flag = service.addProduct(params);
			if (flag) {
				
				response.sendRedirect(path+"/main.jsp");
			}
				
			
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}
		
		
		
	}
	public void init() throws ServletException {
		// Put your code here
		service = new ProductDao();
	}

} 

14. ProductDao.java

package com.product;

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

import com.jdbc.JdbcUtils;

public class ProductDao implements ProductService {

	private JdbcUtils jdbcUtils;
	public ProductDao() {
		// TODO Auto-generated constructor stub
		jdbcUtils = new JdbcUtils();
	}

	public boolean addProduct(List params) {
		
		boolean flag = false;
		try {
			jdbcUtils.getConnection();
			String sql = "insert into product(proid,proname,proprice,proaddress,proimage) values(?,?,?,?,?)";
			flag = jdbcUtils.updateByPreparedStatement(sql, params);
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}finally{
			
			jdbcUtils.releaseConn();
			
		}
		
		
		return flag;
	}

	public List> listProduct(String proname ,int start ,int end) {
		// TODO Auto-generated method stub
		List> list = new ArrayList>();
		List params  = new ArrayList();		
		try {
			jdbcUtils.getConnection();			
			String sql = "select * from product where 1=1 and proname like ? limit ? ,?";	
			if(proname.equals("")){
				sql = "select * from product limit ? ,?";
				params.add(start);
				params.add(end);
				
			}else{				
				params.add("%"+proname+"%");
				params.add(start);
				params.add(end);
			}		
					
			list = jdbcUtils.findMoreResult(sql, params);			
			
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		} finally{
			
			
			jdbcUtils.releaseConn();
			
		}
		
		
		return list;
	}

	public int getItemCount(String proname) {
		// TODO Auto-generated method stub
		int count = 0;
		Map map = null;
		List params = null;		
		try {
			jdbcUtils.getConnection();			
			String sql = "select count(*) totalCount from product where 1=1 and proname like ?";	
			if(proname.equals("")){
				sql = "select count(*) totalCount from product";
				
			}else{
				params = new ArrayList();
				params.add("%"+proname+"%");
			}
		map = jdbcUtils.findSimpleResult(sql, params);
		count = Integer.parseInt(map.get("totalCount").toString());
			
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		} finally{
			jdbcUtils.releaseConn();
		}
		
		
		return count;
	}

	public boolean delProduct(String[] ids) {
		boolean flag = false;
		try {
			jdbcUtils.getConnection();
			if (ids!=null) {
				String[] sql = new String[ids.length];
				for(int i = 0 ; i< ids.length; i++){
					sql[i] = "delete from product where proid = '"+ids[i]+"'";
					System.out.println(sql[i]);
				}
				flag = jdbcUtils.deleteByBatch(sql);	
			}
					
			
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		} finally{
			jdbcUtils.releaseConn();
		}	
		
		return flag;
	}

	public Map viewProduct(String proid) {
		// TODO Auto-generated method stub
		Map map = null;
		try {
			jdbcUtils.getConnection();
			List params = new ArrayList();
			params.add(proid);
			String sql = "select * from product where proid = ?";
			map = jdbcUtils.findSimpleResult(sql, params);
			
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		} finally{
			jdbcUtils.releaseConn();
		}
		
		
		return map;
	}

	

} 

15. ProductService.java

package com.product;

import java.util.List;
import java.util.Map;

public interface ProductService {
	public boolean addProduct(List params);
	
	public List> listProduct(String proname , int start , int end);
	public int getItemCount(String proname);
	public boolean delProduct(String[] ids);
	public Map viewProduct(String proid);
} 

16. JdbcUtils.java

package com.jdbc;

import java.lang.reflect.Field;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetmetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap; 
import java.util.List;
import java.util.Map;

import com.mysql.jdbc.Driver;

public class JdbcUtils {
	private final String USERNAME = "root";
	
	private final String PASSWORD = "123456";
	
	private final String DRIVER = "com.mysql.jdbc.Driver";
	
	private final String URL = "jdbc:mysql://localhost:3306/mydb?characterEncoding=utf-8";
	
	private Connection connection;
	private PreparedStatement pstmt;
	private ResultSet resultSet;
	private Statement stmt;

	public JdbcUtils() {
		// TODO Auto-generated constructor stub
		try {
			Class.forName(DRIVER);
			System.out.println("注册驱动成功!!");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			System.out.println("注册驱动失败!!");
		}

	}

	public Connection getConnection() {

		try {
			connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);

		} catch (Exception e) {
			// TODO: handle exception
			System.out.println("Connection exception !");
		}

		return connection;

	}
	
	
	public boolean deleteByBatch(String[] sql) throws SQLException{
		boolean flag = false;
		stmt = connection.createStatement();
		if (sql!=null) { 
			
			for(int i = 0 ; i params)
			throws SQLException {
		boolean flag = false;
		int result = -1;
		int index = 1; 
		pstmt = connection.prepareStatement(sql);
		if (params != null && !params.isEmpty()) {
			for (int i = 0; i < params.size(); i++) {
				pstmt.setObject(index++, params.get(i));
			}
		}

		result = pstmt.executeUpdate();
		flag = result > 0 ? true : false;
		return flag;

	}

	public  Map findSimpleResult(String sql, List params)
			throws SQLException {
		Map map = new HashMap();
		pstmt = connection.prepareStatement(sql);
		int index = 1;
		if (params != null && !params.isEmpty()) {
			for (int i = 0; i < params.size(); i++) {
				pstmt.setObject(index++, params.get(i));
			}
		}
		resultSet = pstmt.executeQuery(); 

		ResultSetmetaData metaData = pstmt.getmetaData();
		int cols_len = metaData.getColumnCount();

		while (resultSet.next()) {
			for (int i = 0; i < cols_len; i++) {
				String col_name = metaData.getColumnName(i + 1); 
				Object col_value = resultSet.getObject(col_name);
				if (col_value == null) {
					col_value = "";
				}
				map.put(col_name, col_value);
			}

		}

		return map;
	}

	public List> findMoreResult(String sql,
			List params) throws SQLException {
		List> list = new ArrayList>();
		pstmt = connection.prepareStatement(sql);
		int index = 1; 
		if (params != null && !params.isEmpty()) {
			for (int i = 0; i < params.size(); i++) {
				pstmt.setObject(index++, params.get(i));
			}
		}
		resultSet = pstmt.executeQuery(); 
		ResultSetmetaData metaData = resultSet.getmetaData(); 

		while (resultSet.next()) {
			Map map = new HashMap();
			int cols_len = metaData.getColumnCount();
			for (int i = 0; i < cols_len; i++) {
				String col_name = metaData.getColumnName(i + 1); 
																	
				Object col_value = resultSet.getObject(col_name); 
				if (col_value == null) {
					col_value = "";
				}

				map.put(col_name, col_value);
			}
			list.add(map);
		}

		return list;

	}

	public  T findSimpleRefResult(String sql, List params,
			Class cls) throws Exception {
		T resultObject = null;
		int index = 1;
		pstmt = connection.prepareStatement(sql);
		if (params != null && !params.isEmpty()) {
			for (int i = 0; i < params.size(); i++) {
				pstmt.setObject(index++, params.get(i));
			}
		}
		resultSet = pstmt.executeQuery(); 

		ResultSetmetaData metaData = resultSet.getmetaData();
		int cols_len = metaData.getColumnCount(); 
		while (resultSet.next()) {
			resultObject = cls.newInstance(); 
			for (int i = 0; i < cols_len; i++) {
				String col_name = metaData.getColumnName(i + 1); 
				Object col_value = resultSet.getObject(col_name); 
				if (col_value == null) {
					col_value = "";
				}
				Field field = cls.getDeclaredField(col_name);
				field.setAccessible(true);
				field.set(resultObject, col_value);
			}

		}

		return resultObject;
	}

	public  List findMoreRefResult(String sql, List params,
			Class cls) throws Exception {
		List list = new ArrayList();
		int index = 1;
		pstmt = connection.prepareStatement(sql);
		if (params != null && !params.isEmpty()) {
			for (int i = 0; i < params.size(); i++) {
				pstmt.setObject(index++, params.get(i));
			}
		}
		resultSet = pstmt.executeQuery();

		ResultSetmetaData metaData = resultSet.getmetaData(); 
		int cols_len = metaData.getColumnCount(); 
		while (resultSet.next()) {
			T resultObject = cls.newInstance();
			for (int i = 0; i < cols_len; i++) {
				String col_name = metaData.getColumnName(i + 1);
				Object col_value = resultSet.getObject(col_name);
				if (col_value == null) {
					col_value = "";
				}
				Field field = cls.getDeclaredField(col_name);
				field.setAccessible(true); 
				field.set(resultObject, col_value);
			}
			list.add(resultObject);

		}

		return list;
	}
	
	public void releaseConn(){
		if (resultSet!=null) {
			try {
				resultSet.close();
			} catch (Exception e) {
				// TODO: handle exception
				e.printStackTrace();
			}
			
		}
		if(stmt!=null){
			
			try {
				stmt.close();
			} catch (Exception e) {
				// TODO: handle exception
				e.printStackTrace();
			}
		}
		if (pstmt!=null) {
			try {
				pstmt.close();
			} catch (Exception e) {
				// TODO: handle exception
				e.printStackTrace();
			}
		}
		if (connection!=null) {
			try {
				connection.close();
			} catch (Exception e) {
				// TODO: handle exception
				e.printStackTrace();
			}
		}
	}

	
} 

17. DividePage.java

package com.util;

public class DividePage {

	private int pageSize ; 
	private int totalRecord;
	private int currentPage;
	public DividePage(int pageSize, int totalRecord, int currentPage) {		
		this.pageSize = pageSize;
		this.totalRecord = totalRecord;
		setCurrentPage(currentPage);		
		
	}
	public DividePage(int pageSize, int totalRecord) {		
		this(pageSize,totalRecord,1);	
		
	}
	
	public int getPageCount(){		
		int pageCount = totalRecord/pageSize;
		int mod = totalRecord%pageSize;
		if (mod!=0) {
			pageCount++;
		}		
		return pageCount;		
	}
	
	public int fromIndex(){
		
		return (currentPage-1)*pageSize;
	}

	public int toIndex(){
		return pageSize;
	}
	
	public void setCurrentPage( int currentPage){		
		
		if (getPageCount()!=0) {
			
			int validPage = currentPage<1?1:currentPage;
			validPage = validPage>getPageCount()?getPageCount():validPage;		
			this.currentPage = validPage;
		} else{ 
			this.currentPage = 1;
		}
		
	}
	public int getPageSize() {
		return pageSize;
	}
	public void setPageSize(int pageSize) {
		this.pageSize = pageSize;
	}
	public int getTotalRecord() {
		return totalRecord;
	}
	public void setTotalRecord(int totalRecord) {
		this.totalRecord = totalRecord;
	}
	public int getCurrentPage() {
		return currentPage;
	}
	
	
}

18. UUIDTools.java

package com.util;

import java.util.UUID;

public class UUIDTools {

	public UUIDTools() {
		// TODO Auto-generated constructor stub
	}
	
	public static String getUUID(){
		
		UUID uuid = UUID.randomUUID();
		return uuid.toString().replaceAll("-", "").substring(0, 6); 
		
	}

}

19. LogoutAction.java

package com.logout;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class LogoutAction extends HttpServlet {

	public LogoutAction() {
		super();
	}

	public void destroy() {
		super.destroy(); // Just puts "destroy" string in log
		// Put your code here
	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		this.doPost(request, response);
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		response.setContentType("text/html;charset=utf-8");
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
		String path = request.getContextPath();
		String action_flag = request.getParameter("action_flag");
		if (action_flag.equals("logout")) {
			request.getSession().removeAttribute("username");
			response.sendRedirect(path+"/index.jsp");
		}
	}

	public void init() throws ServletException {
		// Put your code here
	}

}

20. web.xml



  
  
    This is the description of my J2EE component
    This is the display name of my J2EE component
    RegisterAction
    com.register.RegisterAction
  
  
    This is the description of my J2EE component
    This is the display name of my J2EE component
    LoginAction
    com.login.LoginAction
  
  
    This is the description of my J2EE component
    This is the display name of my J2EE component
    ProductAction
    com.product.ProductAction
  
  
    This is the description of my J2EE component
    This is the display name of my J2EE component
    LogoutAction
    com.logout.LogoutAction
  
  
    RegisterAction
    /servlet/RegisterAction
  
  
    LoginAction
    /servlet/LoginAction
  
  
    ProductAction
    /servlet/ProductAction
  
  
    LogoutAction
    /servlet/LogoutAction
  
  
    MyFilter
    com.filter.MyFilter
  
  
    MyFilter
     /main.jsp
  
  
    MyFilter
    /addProduct.jsp
  
  
    index.jsp
  

配置调好之后,再Run一下

最后登录:http://www.localhost:8080/ruanjianProject/index.jsp(登录界面),一般用谷歌浏览器。

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号