struts2+ajax注册+模糊查询+时间排列+mysql--mvc

struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="ro" namespace="/" extends="struts-default">
<action name="register" class="com.ro.action.test" method="register">
</action>
<action name="select" class="com.ro.action.test" method="select">
<result name="show">/show.jsp</result>
</action>
<action name="browse" class="com.ro.action.test" method="browse">
<result name="brow">browse.jsp</result>
</action>
</package>
</struts>    

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  <display-name></display-name>	
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <filter>
  	<filter-name>struts2</filter-name>
  	<filter-class>
  		org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
  	</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>struts2</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping></web-app>

Controller(控制器)处理输入(写入数据库记录)
action.test.java  
package com.ro.action;


import java.io.IOException;
import java.util.Date;
import java.util.List;

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

import org.apache.struts2.ServletActionContext;

import com.ro.bean.user;
import com.ro.dao.impl.daoimpl;

public class test {
	private user user;

	public user getUser() {
		return user;
	}
	public void setUser(user user) {
		this.user = user;
	}
	
	
	public String register() throws IOException{
		Date  date=new Date();
		 java.sql.Date  data1=new java.sql.Date(date.getTime());
		user.setTime(data1);
		daoimpl dao=new daoimpl();
		boolean result=dao.register(user);
		HttpServletResponse respone= ServletActionContext.getResponse();
		respone.getWriter().print(result);
		return null;
	}
	public String select(){
		daoimpl dao=new daoimpl();
		List<user> list= dao.select(user.getName());
	HttpServletRequest request=	ServletActionContext.getRequest();
	request.setAttribute("list", list);
		return "show";
	}
	public String browse(){
		HttpServletRequest request=ServletActionContext.getRequest();
		String  id=request.getParameter("id");
		int userId = Integer.parseInt(id);  //转换
		daoimpl dao=new daoimpl();
		user user= dao.queryid(userId);
		request.setAttribute("hh", user);
		return "brow";
	}
}
bean user.java实体类
package com.ro.bean;

import java.sql.Date;


public class user {
	private int id;
	private String name;
	private String sex;
	private String age;
	private Date time;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	public String getAge() {
		return age;
	}
	public void setAge(String age) {
		this.age = age;
	}
	public Date getTime() {
		return time;
	}
	public void setTime(Date time) {
		this.time = time;
	}
	
	
}

Model(模型)表示应用程序核心(比如数据库记录列表)。
dao.util.dbhelper.java
package com.ro.dao.util;

import java.sql.Connection;
import java.sql.DriverManager;

public class dbhelper {
	public static Connection getConnection() throws Exception{
		Class.forName("com.mysql.jdbc.Driver");
		String name="root";
		String password="root";
		String url="jdbc:mysql://localhost:3306/roco?characterEncoding=utf-8";
	    Connection	conn=DriverManager.getConnection(url, name, password);
		return conn;
	}
}
dao.dao.java//接口类
package com.ro.dao;

import java.util.List;

import com.ro.bean.user;

public interface dao {
	public boolean register(user user);//添加
	public List<user> select(String name);//查询
	public user queryid(int id);//根据id查询
}
dao.daoimpl.java //接口实现类
package com.ro.dao.impl;

import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import com.ro.bean.user;
import com.ro.dao.dao;
import com.ro.dao.util.dbhelper;

public class daoimpl implements dao{

	@Override
	public boolean register(user user) {
		Connection conn;
		int i=0;
		try {
			conn=dbhelper.getConnection();
			String sql="insert into name(name,sex,age,time) values(?,?,?,?)";
			PreparedStatement pstm=conn.prepareStatement(sql);
			pstm.setString(1, user.getName());
			pstm.setString(2,user.getSex());
			pstm.setString(3, user.getAge());
			pstm.setDate(4,user.getTime());
			 i=pstm.executeUpdate();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return i>0?true:false;
	}

	@Override
	public List<user> select(String name) {
		List<user> list=new ArrayList<user>();
		Connection conn;
		try {
			conn=dbhelper.getConnection();
			String sql="select * from name where name like ? order by time desc";
			PreparedStatement pstm=conn.prepareStatement(sql);
			pstm.setString(1, "%"+name+"%");
			ResultSet rs=pstm.executeQuery();
			while(rs.next()){
				user user=new user();
				user.setId(rs.getInt(1));
				user.setName(rs.getString(2));
				user.setSex(rs.getString(3));
				user.setAge(rs.getString(4));
				user.setTime(rs.getDate(5));
				list.add(user);
			}
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return list;
	}

	@Override
	public user queryid(int id) {
		List<user> list=new ArrayList<user>();
		user user=new user();
		Connection conn;
		try {
			conn=dbhelper.getConnection();
			String sql="select * from name where id=?";
		    PreparedStatement pstm=conn.prepareStatement(sql);
		    pstm.setInt(1, id);
		    ResultSet rs=pstm.executeQuery();		    
		    while(rs.next()){		    	
		    	user.setId(rs.getInt(1));
		    	user.setName(rs.getString(2));
				user.setSex(rs.getString(3));
				user.setAge(rs.getString(4));
				user.setTime(rs.getDate(5));
		    }
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return user;
	}

	
}



View(视图)显示数据(数据库记录)。
index.jsp  //注册-查询
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'index.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">
	-->
	<script src="script/jquery-3.2.1.min.js"></script>
	<script type="text/javascript">
	$(function(){
	$("#register").click(function(){
	var name=$("#name").val();
	var sex=$("#sex").val();
	var age=$("#age").val();	
	if ("" == name){  
                alert("请输入用户名!");                
                return false;  
            }else if("" == sex){
             alert("请输入性别!");              
                return false;  
            }
            else if ("" == age){  
                alert("请输入年龄!");  
                return false;  
            }  
	$.ajax({
	type:"post",
	data:{"user.name":name,"user.sex":sex,"user.age":age},
	url:"register",
	success:function(da){
	if(da=="true"){
	alert("注册成功");
	}else{
	alert("未知错误");
	}
	}
	});
	});
	});
	</script>
  </head>
  
  <body>
  
  用户名:<input type="text" id="name"><br>
  性别:<input type="text" id="sex"><br>
  年龄:<input type="text" id="age"><br>
  <input type="button" value="注册" id="register">
<br>
<br>
<hr>
<form action="select" method="post">
关键字:<input type="text" name="user.name"><br>
    <input type="submit" value="搜索" >     <input type="reset" value="重置">
</form>
  </body>
</html>
show.jsp //数据排列
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'show.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>
  <div align="center"><form action="select" method="post">
关键字:<input type="text" value="${user.name}"  name="user.name"><br>
    <br/>
            
    <input type="submit" value="搜索" >    
     <input type="reset" value="重置">
</form></div>
<h3 align="center">"${user.name}"搜索结果</h3>
  <table align="center" >
 <c:forEach var="li" items="${list}">
 <tr>
 <td ><a href="browse?id=${li.id}">${li.name}</a></td>
 <td >${li.time}</td>
   </tr>
 </c:forEach>
 </table>
  </body>
</html>
browse.jsp  //可自行添加数据修改功能
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'browse.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>
   <h1 align="center">${hh.name}</h1>
   <p align="center">年龄:${hh.age}</p>
   <p align="center">性别:${hh.sex}</p>
   <p align="center">注册时间:${hh.time}</p>
  </body>
</html>


mysql表
CREATE TABLE `name` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `sex` varchar(255) NOT NULL,
  `age` varchar(255) NOT NULL,
  `time` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;

INSERT INTO `name` VALUES ('1', '1231', '男', '8', '2018-05-03 16:16:24');
INSERT INTO `name` VALUES ('2', '22', '男', '9', '2018-04-30 01:03:05');
INSERT INTO `name` VALUES ('3', '222', '男', '6', '2018-05-02 03:00:56');
INSERT INTO `name` VALUES ('4', '2222', '男', '6', '2018-05-05 00:00:00');
INSERT INTO `name` VALUES ('5', '231233', '男', '6', '2018-05-04 00:00:00');
INSERT INTO `name` VALUES ('6', '58', '男', '6', '2018-05-04 00:00:00');
INSERT INTO `name` VALUES ('7', '5865353', '男', '6', '2018-04-02 18:58:00');
INSERT INTO `name` VALUES ('8', '586535355', '男', '6', '2018-04-09 21:00:00');
INSERT INTO `name` VALUES ('9', '632', '男', '6', '2018-03-06 23:56:01');
INSERT INTO `name` VALUES ('10', '88', '男', '9', '2018-04-11 20:00:00');
INSERT INTO `name` VALUES ('11', '789', '男', '6', '2018-05-04 00:00:00');
INSERT INTO `name` VALUES ('12', '22', '男', '79', '2018-05-05 00:00:00');





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值