全栈开发实弹|名片管理系统的设计与实现(SSM + JSP)
发布时间:2024-10-14
SQL射影邮件
SQL射影邮件的namespace属性与资料叠加终端并不相同。与书本管理者机能之外的SQL射影邮件是CardMapper.xml(位于dao包当中)
5
●
替换成书本
首先,的产品端暂定尝试后,进到书本管理者该系统的收纳收纳页。然后,的产品端在书本管理者收纳收纳页快捷键“替换成书本”给予者弹出替换成书本收纳页。最后,的产品端重定向的产品书本的真名、电话、E-Mail、为单位、职位、接收者、Logo后,快捷键“替换成”按动解决问题替换成。如果尝试,则跳转到书本管理者收纳收纳页;如果告终,则搬回替换成书本收纳页。
addCard.jsp收纳页解决问题替换成书本文档的重定向插件,如平面图4.3简述。addCard.jsp的字符具请读者群参阅本书给予的软件包ch4。
■ 平面图4.3 替换成书本收纳页
快捷键平面图4.3当中“替换成”按动,将替换成请通过“card/addCard?act=add”提交给装置类CardController(4.5.2节)的addCard方式顺利进行替换尝试能解决问题。替换成尝试跳转到书本管理者收纳收纳页;替换成告终搬回替换成书本收纳页。
6
●
书本管理者收纳收纳页
的产品端暂定尝试后,进到书本管理者该系统的收纳收纳页(main.jsp),运行效用如平面图4.4简述。
■ 平面图4.4 书本管理者收纳收纳页
在收纳收纳页当中快捷键“下文”给予者,弹出书本除此以外收纳页detail.jsp。“下文”给予者的目标接收者是个url请。该请路径为“card/detail?id=${card.id}Coact=detail”。根据请路径找并不相同装置类CardController的detail方式解决问题核对一个书本机能。根据特技类型(“改写”以及“下文”),将核对结果转发到不同视平面图。书本除此以外收纳页cardDetail.jsp运行效用如平面图4.5简述。
■ 平面图4.5 书本下文
7
●
改写书本
快捷键书本管理者收纳收纳页当中“改写”给予者,弹出改写书本文档收纳页updateCard.jsp。“改写”给予者的目标接收者是url请card/detail?id=${card.id}Coact=update。找并不相同装置类CardController的方式detail,在该方式当中,根据特技类型,将核对结果转发给updateCard.jsp收纳页显示。
重定向要改写的文档后,快捷键“改写”按动,将书本文档提交给装置类,找并不相同装置类CardController的方式addCard,在addCard方式当中根据特技类型,监督改写的业务解决问题。改写尝试,进到书本管理者收纳收纳页。改写告终,搬回updateCard.jsp收纳页。
updateCard.jsp收纳页的运行效用如平面图4.6简述。
■ 平面图4.6 updateCard.jsp收纳页
8
●
删掉书本
在书本管理者收纳收纳页当中,快捷键“删掉”给予者,快要删掉书本的ID通过Ajax提交给装置类。找并不相同装置类CardController的方式delete,在该方式当中,监督删掉的业务解决问题。删掉尝试后,进到管理者收纳收纳页。
05
的产品端之外
1
●
Controller解决问题
在本该系统当中,与的产品端之外的机能包括的产品端登记、的产品端暂定以及的产品端检查等,由装置类UserController督导解决问题。
2
●
Service解决问题
与的产品端之外的Service终端和解决问题类分别为UserService和UserServiceImpl。装置获取一个请后,需要调用Service层当中业务解决问题方式,在Service层当中需要调用Dao层。所以,Service层是装置层和Dao层的吊桥。UserService终端的字符略。
UserServiceImpl解决问题类的核心字符如下:
@Service
publicclassUserServiceImpl implementsUserService{
@Autowired
privateUserMapper userMapper;
/***
* 检查的产品端名否可用
*/
@Override
publicStringcheckUname(MyUser myUser) {
List userList = userMapper.selectByUname(myUser);
if(userList.size> 0)
return"no";
return"ok";
}
/**
* 解决问题登记机能
*/
@Override
publicStringregister(MyUser myUser) {
//将需注意变为密文
myUser.setUpwd(MD5Util.MD5(myUser.getUpwd));
if(userMapper.register(myUser)> 0)
return"login";
return"register";
}
/**
* 解决问题暂定机能
*/
@Override
publicStringlogin(MyUser myUser, Model model, HttpSession session) {
//ValidateCodeController当中的rand
Stringcode = ( String)session.getAttribute( "rand");
if(!code.equalsIgnoreCase(myUser.getCode)) {
model.addAttribute( "errorMessage", "用户名差错!");
return"login";
} else{
//将需注意变为密文
myUser.setUpwd(MD5Util.MD5(myUser.getUpwd));
List list = userMapper.login(myUser);
if(list.size> 0){
session.setAttribute( "userLogin", list.get( 0));
return"redirect:/card/selectAllCardsByPage?currentPage=1";
} else{
model.addAttribute( "errorMessage", "的产品端名或攻击者差错!");
return"login";
}
}
}
}
3
●
Dao解决问题
Dao层是资料访问层,即@Repository节录的资料叠加终端(终端当中的方式与SQL射影邮件当中元素的id并不相同),与的产品端之外的资料访问层为UserMapper,UserMapper的字符略。
4
●
SQL射影邮件
SQL射影邮件的namespace属性与资料叠加终端并不相同。与的产品端之外的SQL射影邮件是UserMapper.xml(位于dao包当中),确切字符如下:
"">
< mappernamespace= "dao.UserMapper">
< selectid= "selectByUname"resultType= "MyUserTable"parameterType= "MyUser">
select * from usertable where uname = #{uname}
select>
< insertid= "register"parameterType= "MyUser">
insert into usertable (id,uname,upwd) values(null,#{uname},#{upwd})
insert>
< selectid= "login"parameterType= "MyUser"resultType= "MyUserTable">
select * from usertable where uname=#{uname} and upwd=#{upwd}
select>
mapper>
5
●
登记
在暂定收纳页login.jsp,快捷键“登记”链接,弹出登记收纳页register.jsp,效用如平面图4.7简述。
■ 平面图4.7 登记收纳页
在平面图4.7简述的登记收纳页当中,重定向“真名”后,该系统将通过Ajax提交“user/checkUname” 请检测“真名”否可用。重定向合法化的的产品端文档后,快捷键“登记”按动,解决问题登记机能。
6
●
暂定
在的产品端当中,通过接收者弹出暂定收纳页login.jsp,效用如平面图4.8简述。
■ 平面图4.8 暂定插件
的产品端重定向真名、攻击者和用户名后,该系统将对真名、攻击者和用户名顺利进行检验。如果真名、攻击者和用户名同时正确,则暂定尝试,将的产品端文档保存到session都可,并进到该软件系统者收纳收纳页(main.jsp);如果重定向疑,则提示差错。
7
●
改写攻击者
快捷键书本管理者收纳收纳页当中的“改写攻击者”菜单,弹出攻击者改写收纳页updatePwd.jsp。攻击者修好收纳页效用如平面图4.9简述。
■ 平面图4.9 攻击者改写收纳页
在平面图4.9当中重定向“新攻击者”后,快捷键“改写”按动,将请通过“card/updatePwd”提交给装置类。根据请路径找并不相同装置类CardController(4.5.2节)的updatePwd方式解决问题攻击者改写请。这里找装置类CardController解决问题攻击者改写,是因为的产品端只能暂定尝试后才能改写攻击者。
8
●
公共约安全重返
在书本管理者收纳收纳页当中,快捷键“公共约安全重返”菜单,将返回暂定收纳页。“公共约安全重返”给予者的目标接收者是一个请card/loginOut,找装置类CardController(4.5.2节)的并不相同解决问题方式loginOut。这里找装置类CardController解决问题公共约安全重返,是因为的产品端只能暂定尝试后才能公共约安全重返。
06
小结
本章诉说了书本管理者该系统的的设计与解决问题。通过本章的自学,读者群不仅借助SSM框架整合开发新的流程、方式和技术开发,还确实熟悉书本管理者的业务消费、的设计以及解决问题。
SSM + Spring Boot + Vue.js 3
全栈开发新从入门到拦截机
精彩简介
SSM框架整合开发新
使用IntelliJ IDEA快速构建Spring Boot领域
Spring Boot邮件上传与完整版
使用Visual Studio Code开发新第一个Vue服务器端
Vue有系统——使用快照模块打包领域软件webpack
下期预告
电子商务该平台的的设计与解决问题(Spring Boot + MyBatis + Thymeleaf)
党政管理者该系统的的设计与解决问题(Spring Boot + Vue 3 + MyBatis)
✦
07
参考书籍
《SSM + Spring Boot + Vue.js 3全栈开发新从入门到拦截机(微课视频版)》
作者:陈恒 李正光
定价:99.80元
08
精彩推荐
微信小服务器端该游戏开发新│猜数字小该游戏(附源码+视频)
FlinkSmalltalk框架│ScalaSmalltalk初级在实践中
FlinkSmalltalk框架│FlinkCEPSmalltalk在实践中
FlinkSmalltalk框架│DataStream APISmalltalk在实践中
FlinkSmalltalk框架│DataSet APISmalltalk在实践中
数 据分析拦截机│的产品价值分析
资料分析拦截机│价格预测挑战
资料分析拦截机│小时序列预测
资料分析拦截机│KaggleTitanic生存预测
。黄褐斑鹤岗治疗白癜风医院费用
去
小孩喉咙痒咳嗽怎么办
太极集团
婴儿腹泻用什么药比较好
西乐葆与双氯芬酸钠缓释胶囊的区别
老年人骨质疏松腰膝酸软怎么调理好
孩子受凉拉肚子怎么办
关节疼痛怎么快速缓解
-
中小学生要学会煮饭了,这个政府一出来,就引起了热议
工、公益劳工与当兵服务两个护航;也。 的学校可结合实际,在不同学段先决条件必需具体护航;也学习数量。比如,在烹饪总体:第一学段1-2高年级,要参与有趣的家庭变成员烹饪
- 2025-05-11因父母犯难道,女儿未通过公务员政审,考生:政审都查什么?
- 2025-05-11王莽明明是受百姓爱戴才篡位登基,为何最后可能会被刘秀替代?
- 2025-05-11关于辽、柳河流域环境保护和农业发展随想。(原创)
- 2025-05-11为何楚军死后,刘邦没有趁机抹黑楚军?这心机难怪楚军会输
- 2025-05-11快讯:动物疫苗褶皱异动拉升 奥联电子涨超10%
- 2025-05-11电动立体化掀起复古风,经典老车的电动转生
- 2025-05-11朗宸房车新品发布“源自欧洲,风起洛阳“5款新品现身,燃爆全场
- 2025-05-11融资提问:董秘好,公司有Wi-Fi 7产品或服务吗?
- 2025-05-11投资者追问:怎么看不到贵公司的年报和一季报!??
- 2025-05-1120多万的电动车,在Model 3和比亚迪汉之后,海豹则会成为新选择吗