Web——数据库的增加、删除、修改、查找

Web——数据库的增加、删除、修改、查找







package com.jredu.web.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 com.jredu.web.db.DBConnection;
import com.jredu.web.entity.User;


public class UserDao {

	public List<User> selectAll(){
		Connection con=DBConnection.getConnection();
		Statement stmt;
		List<User>  list=new ArrayList<User>();
		try {
			stmt=con.createStatement();
			ResultSet rs=stmt.executeQuery("SELECT * FROM users");
			while(rs.next()){
				User user=new User();
				user.setId(rs.getInt("id"));
				user.setUserName(rs.getString("user_name"));
				user.setPwd(rs.getString("pwd"));
				user.setDisplayName(rs.getString("display_name"));
				list.add(user);
			}
			
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
		
		DBConnection.closeConnection();	
		}
		return list;
	}
	public User selectwhere(String whereOption){
		
		Connection con=DBConnection.getConnection();
		Statement stmt;
		User user=null;
		try {
			stmt=con.createStatement();
			String sql=("SELECT * FROM users");
			if(!whereOption.equals("")){
				sql+=whereOption;
			}
			ResultSet rs=stmt.executeQuery(sql);
			if(rs.next()){
			   user=new User();
				user.setUserName(rs.getString("user_name"));
				user.setPwd(rs.getString("pwd"));
				user.setDisplayName(rs.getString("display_name"));
			
			}
			
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
		
		DBConnection.closeConnection();	
		}
		return user;
	}
	
public  boolean selectwhere2(String whereOption2){
		
		Connection con=DBConnection.getConnection();
		Statement stmt;
		User user=null;
		try {
			 stmt=con.createStatement();
			String sql=("SELECT * FROM users");
			if(!whereOption2.equals("")){
				sql+=whereOption2;
			}
			ResultSet rs=stmt.executeQuery(sql);
			if(rs.next()){
			   user=new User();
				user.setUserName(rs.getString("user_name"));
				user.setPwd(rs.getString("pwd"));
				user.setDisplayName(rs.getString("display_name"));
			return true;
			}
			
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
		
		DBConnection.closeConnection();	
		}
		return false;
	}
	
public int  insert(User user){
	Connection con=DBConnection.getConnection();
    PreparedStatement pstmt=null;
    int count=0;
	String  sql=" insert into users(user_name,pwd,display_name) values(?,?,?)";
	try {
		pstmt=con.prepareStatement(sql);
		pstmt.setString(1, user.getUserName());
		pstmt.setString(2, user.getPwd());
		pstmt.setString(3, user.getDisplayName());
		 count=pstmt.executeUpdate();
		if(count==0){
			//throw new DataAlreadyExistException();
		}		
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally{
		try {
			pstmt.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		DBConnection.closeConnection();
	}
	return count;
	
}
public int update(User user){
	Connection con=DBConnection.getConnection();
    PreparedStatement pstmt=null;
	
    String sql = " update users " +
			 "    set user_name    = ? ," +
			 "        pwd          = ? ," +
		     "        display_name = ?  " +
		     "  where id           = ?  ";
	int affCount=0;
	try {
		pstmt=con.prepareStatement(sql);
		pstmt.setString(1, user.getUserName());
		pstmt.setString(2, user.getPwd());
		pstmt.setString(3, user.getDisplayName());
		pstmt.setInt(4, user.getId());
		affCount=pstmt.executeUpdate();
		
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally{
		try {
			pstmt.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		DBConnection.closeConnection();
	}
	return affCount;
}

public int delete(int id) {
	Connection con = DBConnection.getConnection();
	PreparedStatement pstmt = null;
	int affCount=0;
	String sql = " delete from users where id = ? ";
	try {
		pstmt = con.prepareStatement(sql);
		pstmt.setInt(1, id);
		affCount=pstmt.executeUpdate();
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	} finally {
		try {
			pstmt.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		DBConnection.closeConnection();
	}
	return affCount;
}

/*public void delete(int id){
	Connection con=DBConnection.getConnection();
    PreparedStatement pstmt=null;
	
	String  sql=" delete from users where is= ? ";
	try {
		pstmt = con.prepareStatement(sql);
		pstmt.setInt(1, id);
		pstmt.executeUpdate();
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally{
		try {
			pstmt.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		DBConnection.closeConnection();
	}

	
}*/
public List<User> selectPage(int from,int rows){
	Connection con=DBConnection.getConnection();
	Statement stmt;
	List<User>  list=new ArrayList<User>();
	try {
		stmt=con.createStatement();
		ResultSet rs=stmt.executeQuery("SELECT * FROM users LIMIT "+from+","+rows);
		while(rs.next()){
			User user=new User();
			user.setId(rs.getInt("id"));
			user.setUserName(rs.getString("user_name"));
			user.setPwd(rs.getString("pwd"));
			user.setDisplayName(rs.getString("display_name"));
			list.add(user);
		}
		
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally{
	
	DBConnection.closeConnection();	
	}
	return list;
}
public int selectCount(){
	Connection con=DBConnection.getConnection();
	Statement stmt;
	int count=0;
	try {
		stmt=con.createStatement();
		String sql="SELECT count(1) as count FROM users ";
		ResultSet rs=stmt.executeQuery(sql);
		if(rs.next()){
			count=rs.getInt("count");
		}
		
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally{
		DBConnection.closeConnection();	
		
	}
	
	return count;
}

}
package com.jredu.web.db;
import java.sql.*;

public class DBConnection {
	private static Connection con=null;
	//mysql驱动mingz
	private static String driverName="com.mysql.jdbc.Driver";
	//数据库用户名 
	private static String userName="root";
	//密码 
	private static String userPasswd = "ffffff";
	//数据库名 
	private static String dbName     = "shcoolapp";
	//联结字符串
	private static	String url = "jdbc:mysql://localhost/" + dbName 
			+ "?user="+ userName 
			+ "&password=" + userPasswd
			+ "&useUnicode=true&characterEncoding=gbk";

	public static Connection getConnection(){

		try {
			Class.forName(driverName);
			con =DriverManager.getConnection(url);


		} catch (ClassNotFoundException e) {
			// TODO: handle exception
			e.printStackTrace();
		}catch(SQLException e){
			e.printStackTrace();
		}
		return  con;
	}
	public static void closeConnection(){
		if(con!=null){
			try {
				con.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}

		}

	}

}
package com.jredu.web.entity;

public class User {
	private int id;
public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
private String userName;
private String pwd;	
private String displayName;

public User(){}
public User(String userName, String pwd, String displayName) {
	super();
	this.userName = userName;
	this.pwd = pwd;
	this.displayName = displayName;
}
public String getUserName() {
	return userName;
}
public void setUserName(String userName) {
	this.userName = userName;
}
public String getPwd() {
	return pwd;
}
public void setPwd(String pwd) {
	this.pwd = pwd;
}
public String getDisplayName() {
	return displayName;
}
public void setDisplayName(String displayName) {
	this.displayName = displayName;
}	



}

package com.jredu.web.servlet;

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

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

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

import org.apache.commons.collections.map.HashedMap;

import com.jredu.web.dao.UserDao;
import com.jredu.web.entity.User;


public class UserServlet extends HttpServlet {

	/**
	 * Constructor of the object.
	 */
	public UserServlet() {
		super();
	}

	/**
	 * Destruction of the servlet. <br>
	 */
	public void destroy() {
		super.destroy(); // Just puts "destroy" string in log
		// Put your code here
	}

	/**
	 * The doGet method of the servlet. <br>
	 *
	 * This method is called when a form has its tag value method equals to get.
	 * 
	 * @param request the request send by the client to the server
	 * @param response the response send by the server to the client
	 * @throws ServletException if an error occurred
	 * @throws IOException if an error occurred
	 */
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		
		this.doPost(request, response);
	}

	/**
	 * The doPost method of the servlet. <br>
	 *
	 * This method is called when a form has its tag value method equals to post.
	 * 
	 * @param request the request send by the client to the server
	 * @param response the response send by the server to the client
	 * @throws ServletException if an error occurred
	 * @throws IOException if an error occurred
	 */
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		response.setCharacterEncoding("utf-8");
		request.setCharacterEncoding("utf-8");
		response.setContentType("textml;charset=utf-8");
		
		String action=request.getParameter("action");
		if(null==action||action.equals("select")){
			select(request,response);
			
		}else if(action.equals("update")){
			update(request,response);
			
		}else if(action.equals("add")){
			add(request,response);
		}else if(action.equals("delect")){
			delect(request,response);
		}
		
	}
	//添加
	public void add(HttpServletRequest request, HttpServletResponse response) throws IOException{
		String userName=request.getParameter("userName");
		String pwd=request.getParameter("pwd");
		String displayName=request.getParameter("displayName");
	User user=new  User();
	
	user.setUserName(userName);
	user.setPwd(pwd);
	user.setDisplayName(displayName);
	UserDao userDao = new UserDao();
	int affCount=userDao.insert(user);
	PrintWriter out = response.getWriter();
	out.print(affCount);	
	}
	
	//删除
	public void delect(HttpServletRequest request, HttpServletResponse response) throws IOException{
		
		
		String ids[]=request.getParameterValues("uid[]");
		UserDao userDao = new UserDao();
		int affCount=0;
		for(int i=0;i<ids.length;i++){
			affCount +=userDao.delete(Integer.parseInt(ids[i]));
		}
		PrintWriter out = response.getWriter();
		out.print(affCount);
	} 
	
	
	//修改
	public void update(HttpServletRequest request, HttpServletResponse response) 
			throws IOException{
		String id=request.getParameter("id");
		String userName=request.getParameter("userName");
		String pwd=request.getParameter("pwd");
		String displayName=request.getParameter("displayName");
	User user=new  User();
	user.setId(Integer.parseInt(id));
	user.setUserName(userName);
	user.setPwd(pwd);
	user.setDisplayName(displayName);
	UserDao userDao = new UserDao();
		int affCount=userDao.update(user);
		PrintWriter out = response.getWriter();
		out.print(affCount);
	}
	//查询
	public void select(HttpServletRequest request, HttpServletResponse response) throws IOException{
		
		String page=request.getParameter("page");
		String row=request.getParameter("rows");
		System.out.print(page+"##"+row);
		
		int from=0;
		int rows= Integer.parseInt(row);
		int pages= Integer.parseInt(page);
		if(pages>0){	
			from=rows*(pages-1);
		}
		
		UserDao userDao = new UserDao();
		List<User> list = userDao.selectPage(from,rows);
		
		HashMap<String,Object> map=new HashMap<String,Object>();
		map.put("total", userDao.selectCount());
		map.put("rows", list);

		PrintWriter out = response.getWriter();
		
		JSONObject ja=JSONObject.fromObject(map);
		
		//List<User> list = userDao.selectAll();
		//变成单个对象
		//JSONObject jo=JSONObject.fromObject(user);
		//把list变成JSONArray
		
		//JSONArray ja = JSONArray.fromObject(list);
		
		
		//PrintWriter out = response.getWriter();
		System.out.println(ja.toString());
		out.print(ja.toString());

		
	}
	

	/**
	 * Initialization of the servlet. <br>
	 *
	 * @throws ServletException if an error occurs
	 */
	public void init() throws ServletException {
		// Put your code here
	}

}



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

if(request.getParameter("zyf")!=null){
String zyf= URLDecoder.decode(request.getParameter("zyf"),"utf-8");
out.print(zyf);
}
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'login.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
   <form action="servlet/LoginServlet" method="post">
  
  用户名:<input type="text" name="name"><br>
 密码: <input type="text" name="pwd"><br>
  <input type="submit" value="提交登录" ><br>
  </body>
</html>

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

	if (request.getParameter("zyf") != null) {
		zyf = URLDecoder.decode(request.getParameter("zyf"), "utf-8");
	}
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'main.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
<link rel="stylesheet" href="css/icon.css"></link>
<link rel="stylesheet" href="css/easyui.css"></link>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="js/jquery.easyui.min.js"></script>
<script type="text/javascript">
	/* $(function() {
		$('#dg').datagrid({
		
		       title:'用户列表',
            	  method:'GET',
            	  url:'servlet/UserServlet',
                  iconCls:'icon-ok',
            	  fitColumns:true,
            	  pagination:true,
            	  striped:true,
            	  nowrap:true,
                  singleSelect:true,  //单行
                  rownumbers:true,
                  collapsible:true,//是否可折叠的
                //  pageSize: 1,//每页显示的记录条数,默认为10 
	        	  pageList: [1,2,3],//可以设置每页记录条数的列表 
		
		
		
		
	
			fitColumns : true,
			autoRowHeight:true,
			
			striped:true,
			
			nowrap:true,
			pagination:true,
			toolbar : [ {
			text:'查询',
				iconCls : 'icon-search',
				handler : function() {
					$('#dg').datagrid('reload');
				}
			}, '-', {
			text:'修改',
				iconCls : 'icon-edit',
				handler : function() {
					alert('帮助按钮')
				}
			}, '-', {
			text:'增加',
				iconCls : 'icon-add',
				handler : function() {
					alert('帮助按钮')
				}
			}, '-', {
			text:'删除',
				iconCls : 'icon-remove',
				handler : function() {
					alert('帮助按钮')
				}
			} ],

			columns : [ [ 
			{
				field : 'cc',
				checkbox:true,
				width : 100,
				
			}, {
				field : 'userName',
				title : '用户名',
				width : 100,
				editor:'text',
				align:'center'
			
				
			}, {
				field : 'pwd',
				title : '密码',
				editor:'text',
				align:'center',
				width : 100
			}, {
				field : 'displayName',
				title : '级别',
				width : 100,
				editor:'text',
				align:'center'
			},{
			field:'option',
			title:'操作',
			width : 100,
			formatter:function(value,row,index){
			if(row.editing){
			var s='<a href="javascript:void(0);"οnclick="saverow('+index+')">save</a>';
			return s;
			}else{
			var e='<a href="javascript:void(0);"οnclick="editrow('+index+')">editrow</a>';
			return e;
			}
			}
			}
			 ] ],
			 onBeforeEdit:function(index,row){
			 row.editing=true;
			 $("#dg").datagrid("refreshRow",index);
			 },
			 onAfterEdit:function(index,row){
			 
			  row.editing=false;
			   $("#dg").datagrid("refreshRow",index);
			 }
		});
		
		
		//设置分页控件 
		var p = $('#dg').datagrid('getPager');
		$(p).pagination(
						{
							beforePageText : '第',//页数文本框前显示的汉字 
							afterPageText : '页    共 {pages} 页',
							displayMsg : '当前显示 {from} - {to} 条记录   共 {total} 条记录',
							onSelectPage : function(pageNo, pageSize) {
								var start = (pageNo - 1) * pageSize;
								var end = start + pageSize;
								alert(pageNo);
								$("#dg").datagrid('options').url = "servlet/UserServlet?page="
										+ pageNo+"&rows="+end; //设置表格数据的来源URL
								$("#dg").datagrid('reload'); //重新加载表格
							}

						});
		
		
	});
	
	function editrow(index){
	var row=$("#dg").datagrid("getSelected");
	if(row==null){
	alert("请选择你要编辑的行");
	return;
	}
	$("#dg").datagrid("beginEdit",index);
	}
	function saverow(index){
	$("#dg").datagrid("endEdit",index);
var row=$("#dg").datagrid("getSelected");
	dbSave(row);
	}
	function dbSave(row){
	alert(row.userName+"-"+row.pwd+"-"+row.displayName);
	} */
	var  addFlag="0";
	$(function() {
		$('#dg').datagrid({
			title : '用户列表',
			method : 'GET',
			url : 'servlet/UserServlet?action=select',
			//fit : true,
			fitColumns : true,
			autoRowHeight : true,
			checkOnSelect : false,
			pagination : true,
			striped : true,
			nowrap : true,
			multiSort : true,
			ctrlSelect : true,
			rownumbers : true,
			collapsible : true,//是否可折叠的
			pageSize:4,
			pageList : [ 1, 2, 3 ,4],//可以设置每页记录条数的列表 
			frozenColumns : [ [ {
				field : 'checkbox',
				checkbox : true
			} ] ],
			toolbar : [ {
				text : '查询',
				iconCls : 'icon-search',
				handler : function() {
					$('#dg').datagrid('reload');
				}
			}, '-', {
				text : '修改',
				iconCls : 'icon-edit',
				handler : function() {
					alert('帮助按钮');
				}
			}, '-', {
				text : '添加',
				iconCls : 'icon-add',
				handler : function() {
				
				if(addFlag=="0"){
				$('#dg').datagrid('insertRow',{
					index:0,//索引从0开始
					row:{}
					});
					var editIndex=0;
					$('#dg').datagrid('selectRow',editIndex)
					         .datagrid('beginEdit',editIndex);
					         addFlag="1";
				}
					
				}
			}, '-', {
				text : '删除',
				iconCls : 'icon-remove',
				handler : function() {
		
		
		$.messager.confirm("信息确认","确定删除吗?",function(ret){
									    if(ret){
									    	var row =$("#dg").datagrid("getSelections");
									    	if(row==null){
									    		$.messager.alert("提示","请选择要删除的数据");
									    		return;
									    	}
									    	var ids =[];
									    	for(var i=0;i<row.length;i++){
									    		ids.push(row[i].id);
									    	}
									    	$.post("servlet/UserServlet?action=delect",{uid:ids},
									    	function(data){
									    		if(data>0){
									    			$('#dg').datagrid('reload');
									    			alert("删除成功");
									    		}else{
									    			alert("删除失败");
									    		}
									    	});
									    }
									
									});
		
				}
			} ],

			columns : [ [ {
				field : 'id',
	            hidden:true,
				align : 'center'
			},
			
			{
				field : 'userName',
				title : '用户名',
				width : 100,
				sortable : true,
				editor : 'text',
				align : 'center'
			}, {
				field : 'pwd',
				title : '密码',
				width : 100,
				editor : 'text',
				align : 'center'
			}, {
				field : 'displayName',
				title : '级别',
				width : 100,
				height : 100,
				editor : 'text',
				align : 'center'
			},{
				field : 'option',
				title : '操作',
				width : 100,
				formatter: function(value,row,index){
					if(row.editing){
						var s ='<a href="javascript:void(0);" οnclick="saverow('+index+')">save</a>'+'  '
						+'<a href="javascript:void(0);" οnclick="cancleEdit('+index+')">cancle</a>'; 
						return s;
					}else{
						var e ='<a href="javascript:void(0);" οnclick="editrow('+index+')">edit</a>'; 
						return e;
					}
				}
			} ] ],
			onBeforeEdit : function(index,row){
				row.editing = true;
				$("#dg").datagrid("refreshRow",index);
			},
			onAfterEdit: function(index,row){
				row.editing = false;
				$("#dg").datagrid("refreshRow",index);
			}
		});
		//设置分页控件 
		var p = $('#dg').datagrid('getPager');
		$(p).pagination(
						{
							beforePageText : '第',//页数文本框前显示的汉字 
							afterPageText : '页    共 {pages} 页',
							displayMsg : '当前显示 {from} - {to} 条记录   共 {total} 条记录',
							/* onSelectPage : function(pageNo, pageSize) {
								var start = (pageNo - 1) * pageSize;
								var end = start + pageSize;
								alert(pageNo);
								$("#dg").datagrid('options').url = "servlet/UserServlet?page="
										+ pageNo+"&rows="+end; //设置表格数据的来源URL
								$("#dg").datagrid('reload'); //重新加载表格
							} */

						});

	});
	function editrow(index){
		var row = $("#dg").datagrid("getSelected");
		if(row == null){
			alert("请选择您要编辑的行");
			return;
		}
		$("#dg").datagrid("beginEdit",index);
	}
	function saverow(index){
		$("#dg").datagrid("endEdit",index);
		var row = $("#dg").datagrid("getSelected");
		dbSave(row);
	}
	
	function cancleEdit(index){
	$("#dg").datagrid("rejectChanges");
	if(addFlag=="1"){
	addFlag="0";
	}
	}
	
	function dbSave(row){
	var id=row.id;
		var name=row.userName;
	var pwd=row.pwd;
	var dName=row.displayName;
	
	if(addFlag=="1"){
		$.post("servlet/UserServlet?action=add",
	{userName:name,pwd:pwd,displayName:dName},
	function(data){
	if(data=="1"){
	alert("添加成功");
	}else{
		alert("添加失败");
	}
	});	
	addFlag="0";
	
	}else{
		$.post("servlet/UserServlet?action=update",
	{id:id,userName:name,pwd:pwd,displayName:dName},
	function(data){
	if(data=="1"){
	alert("修改成功");
	}else{
		alert("修改失败");
	}
	});	
	}

	}
	 
			
	
</script>
</head>

<body>
	<%=zyf%>
	This is my main.JSP page.
	<br> ${sessionScope.user.displayName}

	<table class="easyui-datagrid" id="dg">

	</table>
</body>
</html>

package com.jredu.web.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;
import javax.servlet.http.HttpSession;


public class URLfilter implements Filter {


public  URLfilter(){

}


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

}


@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
// TODO Auto-generated method stub

HttpServletResponse response=(HttpServletResponse)arg1;
HttpServletRequest  request=(HttpServletRequest )arg0;
HttpSession session=request.getSession();
System.out.println("过滤器运行");
if(session.getAttribute("user")==null){
if(request.getRequestURI().indexOf("login/login.jsp")>0){
arg2.doFilter(request, response);
}else{

System.out.println("非法用户");
response.sendRedirect("login.jsp");
}
}
else{
arg2.doFilter(request, response);
}
//login/main.jsp      *.jsp  /login.jsp
// if(session.getAttribute("user")==null){
// if(request.getRequestURI().indexOf("login/login.jsp")>0){
// arg2.doFilter(request, response);
// }else{
//
// System.out.println("非法用户");
// response.sendRedirect("login.jsp");
// }
// }
}


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

}


}
  • 4
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MLDN 李兴华 Java Web 开发实战经典.pdf (高清版) 全书分为两部分,需 要全部下载下载一起解压,此部分为第一部分 带有书签,清华大学出版社 第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 1.3、JAVA EE架构 1.4、JAVA EE核心设计模式 1.5、Struts开发框架 1.6、本章摘要 1.7、开发实战讲解 第2章 HTML、JavaScript简介 2.1、服务器与浏览器 2.2、HTML简介 2.2.1、HTML元素概览 2.2.2、创建显示WEB页 2.2.3、创建表单WEB页 2.3、JavaScript简介 2.3.1、JavaScript的基本语法 2.3.2、事件处理 2.3.3、window对象 2.4、本章摘要 2.5、开发实战讲解 第3章 XML简介 3.1、认识XML 3.2、XML解析 3.2.1、DOM解析操作 3.2.2、SAX解析操作 3.2.3、XML解析的好帮手:JDOM 3.2.4、最出色的解析工具:DOM4J 3.3、使用JavaScript操作DOM 3.4、开发实战讲解(基于Oracle数据库) 第4章 Tomcat服务器的安装及配置 4.1、Web容器简介 4.2、Tomcat简介 4.3、Tomcat服务器的下载及配置 4.3.1、Tomcat下载 4.3.2、Tomcat安装 4.3.3、服务器配置 4.4、编写第一个jsp文件 4.5、交互性 4.6、本章摘要 4.7、开发实战讲解 第5章 JSP基础语法 5.1、JSP注释 5.2、Scriptlet 5.2.1、第一种Scriptlet: 5.2.2、第二种Scriptlet: 5.2.3、第三种Scriptlet: 5.3、Scriptlet标签 5.4、page指令 5.4.1、设置页面的MIME 5.4.2、设置文件编码 5.4.3、错误页的设置 5.4.4、数据库连接操作 5.5、包含指令 5.5.1、静态包含 5.5.2、动态包含 5.6、跳转指令 5.7、实例操作:用户登陆程序实现(JSP + JDBC实现) 5.7.1、创建数据库表 5.7.2、程序实现思路 5.7.3、程序实现 5.8、本章摘要 5.9、开发实战讲解(基于Oracle数据库) 第6章 JSP内置对象 6.1、JSP内置对象概览 6.2、四种属性范围 6.2.1、page属性范围(pageContext范围) 6.2.2、request属性范围 6.2.3、session属性范围 6.2.4、application属性范围 6.2.5、深入研究page属性范围 6.3、request对象 6.3.1、乱码解决 6.3.2、接收请求参数 6.3.3、显示全部的头信息 6.3.4、角色验证 6.3.5、其他操作 6.4、response对象 6.4.1、设置头信息 6.4.2、页面跳转 6.4.3、操作Cookie 6.5、session对象 6.5.1、取得Session Id 6.5.2、登陆及注销 6.5.3、判断新用户 6.5.4、取得用户的操作时间 6.6、application对象 6.6.1、取得虚拟目录对应的绝对路径 6.6.2、范例讲解:网站计数器 6.6.3、查看application范围的属性 6.7、WEB安全性及config对象 6.7.1、WEB安全性 6.7.2、config对象 6.8、out对象 6.9、pageContext对象 6.10、本章摘要 6.11、开发实战讲解(基于Oracle数据库) 第7章 JavaBean 7.1、JavaBean简介 7.2、在JSP中使用JavaBean 7.2.1、WEB开发的标准目录结构 7.2.2、使用JSP的page指令导入所需要的JavaBean 7.2.3、使用指令 7.3、JavaBean与表单 7.4、设置属性: 7.4.1、设置指定的属性 7.4.2、指定设置属性的参数 7.4.3、为属性设置具体内容 7.5、取得属性: 7.6、JavaBean的保存范围 7.6.1、page范围的JavaBean 7.6.2、request范围的JavaBean 7.6.3、session范围的JavaBean 7
目录 前言 第1部分 介绍数据库、SQL和JDBC 第1章 关系型数据库 1.1 理解关系型数据库管理系统 1.1.1 关系模型 1.1.2 Codd法则 1.1.3 表、行、列和关键字 1.1.4 主键 1.1.5 外键 1.1.6 关系 1.1.7 视图 1.1.6 范式化 1.2 高级语言 1.2.1 结构化查询语言 1.2.2 数据定义语言 1.2.3 数据处理语言 1.2.4 数据查询语言 1.3 事务管理和事务控制命令 1.3.1 ACID测试 1.3.2 SQL中的事务管理 1.4 数据库安全和数据控制语言 1.4.1 管理数据库用户 1.4.2 用户权限 1.4.3 用户组和角色 1.5 数据库体系结构 1.5.1 Java数据对象 1.5.2 两层模型 1.5.3 三层模型 1.6 小结 第2章 设计数据库 2.1 数据库设计应考虑的事项 2.1.1 项目规范 2.1.2 设计表 2.1.3 生成发票 2.2 引用完整性 2.2.1 通用完整性规则 2.2.2 特定于数据库的完整性规则 2.3 小结 第3章 SQL基础 3.1 SQL语言 3.2 SQL数据类型 3.3 数据定义语言 3.3.1 创建、取消、更改数据库和表 3.3.2 创建、更改和取消视图 3.4 数据处理语言 3.4.1 INSERT语句 3.4.2 UPDATE语句 3.4.3 DELETE语句 3.5 数据查询语言 3.5.1 SELECT语句 3.5.2 WHERE子句 3.5.3 SQL运算符 3.5.4 使用子查询 3.6 对查询结果排序 3.7 将查询结果进行汇总 3.7.1 集合函数 3.7.2 使用HAVING子句来筛选组 3.7.3 使用索引提高SQL查询效率 3.7.4 格式化SQL命令 3.7.5 使用SQL连接 3.7.6 编写SQL的JOIN命令 3.7.7 使用UNION运算符进行组合查询 3.8 数据控制语言 3.8.1 管理用户 3.8.2 授予和取消用户权限 3.9 创建和使用存储过程 3.9.1 在存储过程中使用输入参数 3.9.2 存储过程中使用输出参数 3.10 小结 第4章 JDBC入门 4.1 什么是JDBC 4.2 两层和三层模型 4.2.1 两层模型 4.2.2 三层模型 4.3 SQL的一致性 4.4 JDBC兼容性 4.5 JDBC如何工作 4.5.1 DriverManager 4.5.2 JDBC DataSource 4.5.3 DataSource对象和JNDI 4.5.4 部署和使用DataSource的基本实现 4.6 连接池 4.7 分布式事务处理 4.7.1 分布式事务管理 4.7.2 Connection对象 4.8 SQL语句 4.8.1 Statement对象 4.8.2 PreparedStatement语句 4.8.3 CallableStatement 4.9 事务 4.9.1 事务独立性等级 4.9.2 事务存储点 4.9.3 多线程 4.10 批更新 4.11 ResultSet 4.12 可滚动的ResultSet 4.12.1 创建可滚动的ResultSet 4.12.2 游标控制 4.12.3 将游标移动到指定行 4.12.4 获得游标位置

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值