# 基于 SSH 的个人信息管理系统
![](https://www.writebug.com/myres/static/uploads/2021/11/24/2fa695d99d690c15220769fd2ce69036.writebug)
## **前言:**
功能模块:登录,注册,个人信息管理,通讯录管理,日程安排,文件管理。
要求:
(1) 登录及注册页面要有输入校验,采取 struts2 的校验框架实现,即-validation.xml 配置文件的形式。
(2) 通讯录的查询功能必须支持模糊查询。
注意:注册需采用模型驱动的形式。
这是老师给出的要求,其实目前的实验,一直处于 Struts2 的小案例,逻辑不是很复杂,功能模块单一,类似于上次的图书管理系统,如果想要完善,后续的工作量还是很大的,由于一直采用 JDBC 进行数据库的操纵,在这个项目中,决定使用 spring+Struts2+hibernate
---
#### **功能模块:**
1. 个人用户的登录及注册,登录成功后对个人信息的修改以及头像的更换。(其中使用了拦截器,只有登录后才可以进行相关操作,否则只能访问主页。)
2. 对通讯录中联系人的增删改查,支持通过姓名或者手机号进行模糊查询。
3. 对日程安排的增删改查。
## **一、环境搭建:**
使用 MyEclipse+MySQL。框架使用 Struts2+Spring+Hibernate。
#### **1、数据库:**
**user 表以及 friends 表的创建以及数据的插入:**
```
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `user`
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`userId` int(100) NOT NULL AUTO_INCREMENT,
`userName` varchar(100) NOT NULL,
`password` varchar(100) NOT NULL,
`work` varchar(100) NOT NULL,
`realName` varchar(100) NOT NULL,
`phone` varchar(100) NOT NULL,
PRIMARY KEY (`userId`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Table structure for `friends`
-- ----------------------------
DROP TABLE IF EXISTS `friends`;
CREATE TABLE `friends` (
`friendId` int(100) NOT NULL AUTO_INCREMENT,
`userId` int(100) NOT NULL,
`friendName` varchar(100) NOT NULL,
`friendPhone` varchar(100) NOT NULL,
`friendCompany` varchar(100) NOT NULL,
`friendQQ` varchar(100) NOT NULL,
PRIMARY KEY (`friendId`),
KEY `user_id` (`userId`),
CONSTRAINT `user_id` FOREIGN KEY (`userId`) REFERENCES `user` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('1', 'hlk1135', '123456', '学生', '史坤', '17862821585');
-- ----------------------------
-- Records of friends
-- ----------------------------
INSERT INTO `friends` VALUES ('1', '1', '逯其鲁', '17862821111', '阿里巴巴', '862186722');
INSERT INTO `friends` VALUES ('2', '1', '李冬杰', '17862821111', '百度', '111111111');
INSERT INTO `friends` VALUES ('3', '1', '曹恒阳', '17862821111', 'Google', '111111111');
```
#### **2、项目结构搭建:**
![](https://www.writebug.com/myres/static/uploads/2021/11/24/1c11e544810a734ff03ab70f33ae076c.writebug)
最初搭建 SSH 环境的时候,使用了 Myeclipse 中的 Add 自行自动导入,但是由于 jar 包之间的冲突,改为自己全部手动导入。**给大家一个 SSH 整合之后的 jar 包,虽然有几个 jar 包是多余的,但是我可以保证绝对没有冲突,而且绝对的可以使 SSH 项目很好的跑起来。**
**1)web.xml:**
```
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
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_2_5.xsd">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- 配置Spring的监听器,用于初始化ApplicationContext对象 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/applicationContext.xml</param-value>
</context-param>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
<!-- 自动扫描action -->
<init-param>
<param-name>actionPackages</param-name>
<param-value>com.hlk.action</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
```
注:如果这里 XML 文件的 contextConfigLocation 使用 `classpath:` 报类似于如下的错误:
```
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/beans.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/beans.xml]
Caused by: java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/beans.xml]
```
最后经过不断的测试,调整,得到了如下结论,仅供参考:
```
<!-- needed for ContextLoaderListener -->
<!-- 指定spring配置文件的位置 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<!-- 可以成功加载配置文件 -->
<!-- <param-value>/WEB-INF/classes/beans.xml,/WEB-INF/classes/action-beans.xml</param-value> -->
<!-- 不能成功加载配置文件 -->
<!-- <param-value>/WEB-INF/beans.xml,/WEB-INF/action-beans.xml</param-value> -->
<!-- 可以成功加载配置文件 -->
<!-- <param-value>classpath:*beans.xml</param-value> -->
<!-- 不能成功加载配置文件 -->
<!-- <param-value>classpath:beans.xml,action-beans.xml</param-value> -->
<!-- 可以成功加载配置文件 -->
<param-value>classpath:beans.xml,classpath:action-beans.xml</param-value>
</context-param>
<!-- Bootstraps the root web application context before servlet initialization -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
```
**2)applicationContext.xml:**(Spring 的配置文件)
```
<?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:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd">
<!-- 自动扫描dao和service包(自动注入) -->
<context:component-scan base-package="com.hlk.dao,com.hlk.service"/>
<!-- 引入属性文件 -->
<context:property-placeholder location="/WEB-INF/classes/config.properties"/>
<!-- 配置数据源 -->
<bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
<!-- 数据源驱动类可不写,Druid默认会自动根据URL识别DriverClass -->
<property name="driverClassName" value="${driverClassName}" />
<!-- 基本属性 url、user、password -->
<property name="url" value="${jdbc_url}" />
<property name="username" value="${jdbc_username}" />
<property name="password" value="${jdbc_password}" />
<!-- 配置初始化大小、最小、最大 -->
<property name="initialSize" value="3"
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Struts2+Spring3+Hibernate4集成框架,MySQL数据库搭建的个人信息管理系统,前端使用Bootstrap,后端采用Struts2+Spring3+Hibernate4集成框架,数据库使用MySQL数据库搭建的个人信息管理系统。 功能模块:登录,注册,个人信息管理,通讯录管理,日程安排,文件管理。 要求: (1) 登录及注册页面要有输入校验,采取 struts2 的校验框架实现,即-validation.xml 配置文件的形式。 (2) 通讯录的查询功能必须支持模糊查询。
资源推荐
资源详情
资源评论
收起资源包目录
100011128-基于 Java(SSH)+MySQL 实现(Web)的个人信息管理系统.zip (97个子文件)
perinfo
.classpath 5KB
.settings
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.jdt.core.prefs 357B
.jsdtscope 488B
com.genuitec.eclipse.core.prefs 127B
org.eclipse.wst.common.component 559B
org.eclipse.wst.common.project.facet.core.xml 245B
org.eclipse.wst.jsdt.ui.superType.container 49B
.mymetadata 320B
src
struts.xml 4KB
com
hlk
dao
UserDao.java 322B
FileDao.java 179B
impl
UserDaoImpl.java 1KB
BaseDaoImpl.java 57B
FileDaoImpl.java 1KB
FriendDaoImpl.java 2KB
BaseDao.java 745B
FriendDao.java 358B
service
FriendService.java 708B
UserService.java 606B
impl
FileServiceImpl.java 646B
UserServiceImpl.java 855B
FriendServiceImpl.java 982B
FileService.java 182B
model
Friends.java 2KB
Files.java 3KB
User.java 3KB
action
FriendAction.java 4KB
FileAction.java 3KB
UserInterceptor.java 915B
BaseAction.java 2KB
UserAction.java 1KB
LICENSE 1KB
.myhibernatedata 498B
WebRoot
WEB-INF
classes
struts.xml 4KB
jdbc.properties 367B
applicationContext.xml 3KB
log4j.properties 518B
config.properties 368B
web.xml 1KB
jsp
list.jsp 7KB
uploadFile.jsp 4KB
success.jsp 897B
edit.jsp 4KB
addFriend.jsp 4KB
file.jsp 7KB
index.jsp 3KB
js
admin.js 343B
bootstrap.min.js 36KB
index.js 3KB
jquery.min.js 94KB
css
bootstrap.min.css 118KB
admin.css 3KB
mood.css 2KB
register.css 2KB
regist.jsp 3KB
images
5817.png 419B
banner_top.jpg 83KB
pre.png 196B
reg_logo.png 10KB
import.gif 262B
5849.png 399B
6167.png 612B
h_line.jpg 1KB
5891.png 457B
photos.jpg 12KB
6264.png 406B
left
line_bg.png 129B
source.png 456B
channel.png 671B
cloud.png 515B
select_xl.png 191B
photos.jpg 12KB
custom.png 688B
app.png 663B
system.png 428B
syetem_management.png 838B
select_xl01.png 207B
statistics.png 762B
back.png 671KB
5794.png 514B
li.jpg 1KB
r_line.jpg 1KB
first.png 487B
time.jpg 1KB
r_title_bg.jpg 1KB
META-INF
MANIFEST.MF 36B
login.jsp 937B
.project 2KB
.gitignore 189B
.mystrutsdata 240B
README.md 15KB
information.sql 3KB
config
jdbc.properties 367B
applicationContext.xml 3KB
log4j.properties 518B
config.properties 368B
共 97 条
- 1
资源评论
神仙别闹
- 粉丝: 2672
- 资源: 7640
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于 Java的班级管理系统课程设计
- 深入探索Suno AI:教程、元标签与案例分析.pdf
- 超市会员积分管理系统主要用于实现了企业管理数据统计等
- 基于 Java的班级管理系统
- MyBatis 动态 SQL:灵活而强大的查询构建器.pdf
- com.accordion.prettyo.apk
- 毕业设计:基于SSM的mysql-ssm软件bug管理系统(源码 + 数据库 + 说明文档)
- MTSQL8.0.35windows(64bit)-mysql-installer-community-8.0.35.0
- 人工智能引领音乐创作新时代之Suno AI
- Public-bicycle-usage-forecast-master.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功