您的位置:首页 > 编程语言 > Java开发

javaweb 简单的同学聚会系统

2017-01-22 13:21 246 查看
今年大三了,很多3年制的同学都要毕业出去工作了,来年我也要出去实习。本着在工作之前办一个不变味的同学聚会的目的,写了这个么一简陋的聚会信息收集系统。前前后后花的时间也不多,用到了springmvc 和 mybatis 的技术(只能说技术,不能说整合)。

总的目录结构:



导入的包:(我把常用的都导进去了,肯定有些用不上的 )



数据库:

create database gather;
use gather;
create table wuni(
id int primary key auto_increment,
name varchar(20),
phone varchar(20),
weichat varchar(20),
qq varchar(20)
);
create table daya(
id int primary key auto_increment,
name varchar(20),
phone varchar(20),
weichat varchar(20),
qq varchar(20)
);


javabean: User.java

package com.loger.bean;

public class User {
private int id;
private String name;
private String phone;
private String weichat;
private String qq;
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 getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getWeichat() {
return weichat;
}
public void setWeichat(String weichat) {
this.weichat = weichat;
}
public String getQq() {
return qq;
}
public void setQq(String qq) {
this.qq = qq;
}

@Override
public String toString() {
return "User [id=" + id + ", name=" + name + ", phone=" + phone + ", weichat=" + weichat + ", qq=" + qq + "]";
}
public User(int id, String name, String phone, String weichat, String qq) {
super();
this.id = id;
this.name = name;
this.phone = phone;
this.weichat = weichat;
this.qq = qq;
}
public User() {
super();
}

}


web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>GatheringSystem</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- The front controller of this Spring Web application, responsible for
handling all application requests -->
<servlet>
<servlet-name>springDispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

<!-- Map all requests to the DispatcherServlet for handling -->
<servlet-mapping>
<servlet-name>springDispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.gif</url-pattern>

</servlet-mapping>

<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>

<!-- 配置编码过滤器 -->
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>

</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

</web-app>


springmvc 的配置文件:spring.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd"> 
<context:component-scan base-package="com.loger.controller"></context:component-scan>

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"></property>
<property name="suffix" value=".jsp"></property>
</bean>

</beans>


controller:Collection.java

package com.loger.controller;

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

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.loger.bean.User;
import com.loger.dao.Insert;

@Controller
public class Collection {

@RequestMapping("/getAllDaya")
public String getAllDaya(HttpSession session) throws IOException{

List<User> users = Insert.getAllDaya();
session.setAttribute("users", users);
return "list";
}

@RequestMapping("/getAllWuni")
public String getAllWuni(HttpSession session) throws IOException{

List<User> users = Insert.getAllWuni();
session.setAttribute("users", users);
return "list";
}

@RequestMapping("/insertdaya")
public String insertdaya(User user) throws IOException{

Insert.insertDaya(user);
return "success1";
}

@RequestMapping("/insertwuni")
public String insertwuni(User user) throws IOException{

Insert.insertWuni(user);
return "success2";
}

@RequestMapping("/wuni")
public String wuni(){

return "collectionwuni";
}

@RequestMapping("/daya")
public String daya(){

return "collectiondaya";
}

@RequestMapping("/hello")
public String hello(){
System.out.println("Hello");
return "test";
}

}


对数据库的各种操作:Insert.java (这里名字就这么取了)

(我这里对两个班级的聚会信息收集本来是合在一起写的,但是测试的时候发现两个插入都是插到同一个班级里,索性就分开来写了,分开来还是不行,最后发现是sql语句写错了,懒得合在一起了,包括后面的收集页面也是因为这个原因写了两个。这里有很多代码功能是重复的,也懒得去管了!)

package com.loger.dao;

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

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import com.loger.bean.User;
import com.mchange.v2.codegen.bean.SerializableExtension;
import com.sun.xml.internal.bind.v2.runtime.unmarshaller.XsiNilLoader.Array;

public class Insert {

static String resource = "mybatis-config.xml";

public static void insertWuni(User user) throws IOException{
Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
SqlSession session = sessionFactory.openSession();
String statement = "mapper.addIntoWuni";
session.insert(statement, user);
session.commit();
}

public static void insertDaya(User user) throws IOException{
Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
SqlSession session = sessionFactory.openSession();
String statement = "mapper.addIntoDaya";
int i = session.insert(statement, user);
session.commit();
}

public static List<User> getAllDaya() throws IOException{

Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
SqlSession session = sessionFactory.openSession();

String arg0 = "mapper.getAllFromDaya";
List<User> users = session.selectList(arg0);

return users;
}

public static List<User> getAllWuni() throws IOException{

Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
SqlSession session = sessionFactory.openSession();

String arg0 = "mapper.getAllFormWuni";
List<User> users = session.selectList(arg0);

return users;
}

}


mybatis 的配置文件:mybatis-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/gather" />
<property name="username" value="root" />
<property name="password" value="apple" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper.xml"/>
</mappers>
</configuration>


mybatis 操作文件:mapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="mapper">

<select id="getAllFromDaya" resultType="com.loger.bean.User">
select * from daya
</select>

<insert id="addIntoDaya" parameterType="com.loger.bean.User" flushCache="true">
insert into daya(name,phone,weichat,qq) values (#{name},#{phone},#{weichat},#{qq})
</insert>

<select id="getAllFormWuni" resultType="com.loger.bean.User">
select * from wuni
</select>

<insert id="addIntoWuni" parameterType="com.loger.bean.User" flushCache="true">
insert into wuni(name,phone,weichat,qq) values (#{name},#{phone},#{weichat},#{qq})
</insert>

</mapper>


index.jsp (部分)

wuni:
<a href="wuni"><font color="##0000CC">点我报名</font></a>
<a href="getAllWuni"><font color="#0000CC">查看报名名单</font></a><br>
<br>

daya:
<a href="daya"><font color="#0000CC">点我报名</font></a>
<a href="getAllDaya"><font color="#0000CC">查看报名名单</font></a><br>
</h4>


collectionwuni.jsp 和 collectiondaya.jsp (部分代码,这里分开写的原因已经在上面说明了,建议不要分开写)

<form action="insertdaya">
<!--
<form action="insertwuni">
-->

姓名:<input type="text" name="name"><br>
手机:<input type="text" name="phone"><br>
微信:<input type="text" name="weichat"><br>
Q Q:<input type="text" name="qq"><br>
<input type="submit" value="提交">
</form>


list.jsp

<%@page import="java.io.PrintWriter"%>
<%@page import="java.util.ArrayList"%>
<%@page import="com.loger.bean.User"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

<%
response.getWriter().println("已经报名的同学:<br>");
ArrayList<User> users = (ArrayList<User>) session.getAttribute("users");
for (User user : users) {
response.getWriter().println("<center>" + user.getName() + "</center><br>");
}
%>
<center><a href="index.jsp">返回</a></center>
</body>
</html>


success1.jsp 和 success2.jsp (建议不要分开写)

<%
response.getWriter().println("你已报名成功!");
User user = (User)request.getAttribute("user");
response.getWriter().println(user.toString());
response.getWriter().println("<br><a href=\"getAllDaya\">查看报名名单</a>");
       <!--
     response.getWriter().println("<br><a href=\"getAllWuni\">查看报名名单</a>");

     -->

%>


css 和 js 部分省略

运行效果:







内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: