基于javaweb的SSM新闻管理系统(java+ssm+js+jsp+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

580023142402

590023142402

000023152402

020023152402

030023152402

040023152402

基于javaweb的SSM新闻管理系统(java+ssm+js+jsp+mysql)

项目介绍

管理员角色包含以下功能: 管理员登录,新闻管理,类别管理,用户管理,管理员管理,广告管理等功能。 用户角色包含以下功能: 新闻主页,新闻分类查看,查看新闻细节,用户登录,评论新闻等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;  5.数据库:MySql 5.7版本;

技术栈

  1. 后端:Spring+SpringMVC+Mybatis 2. 前端:HTML+CSS+JavaScript+jsp

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ 登录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
			session.setAttribute("modifyUser", userById2);
}
return "redirect:login.jsp";
}

@RequestMapping("findpwd")
public String findpwd(HttpServletRequest request,
HttpServletResponse response) {
HttpSession session = request.getSession();
String name = request.getParameter("username");
String tel = request.getParameter("phone_number");
String email = request.getParameter("email");
User userByName = userService.findUserByName(name);
userByName.getUid();
Integer i = userByName.getTel();
String s = i + "";
String sqlTel = s + tel.substring(10, 11);
String sqlEamil = userByName.getEmail();
session.setAttribute("userByName", userByName);
// Integer intSqlName = Integer.parseInt(sqlName);
if (tel.equals(sqlTel) && email.equals(sqlEamil)) {
return "redirect:modifyPwd.jsp";
} else {
return "redirect:findPwd.jsp?find=notFind!";
}
}

@RequestMapping("modifyPwd")
public String modifyPwd(HttpServletRequest request,
HttpServletResponse response) {
User user = (User) request.getSession().getAttribute("userByName");
Integer uid = user.getUid();
String password = request.getParameter("password");
String rePasword = request.getParameter("confirm_password");
if (password.equals(rePasword)) {
userService.updatePwd(uid, password);
return "redirect:login.jsp";
}
return "redirect:modifyPwd.jsp?mesg=RepeatPassword Error!";

}

}
/*package com.news.controller;


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
	url="tpchshihua?flag=1";
return url;
}
@RequestMapping("delnt")
public String delnt(HttpServletRequest req){
String url="";
int i;
int ntid=Integer.parseInt(req.getParameter("ntid"));
List<News> list = getnews.findnewntid(ntid);
if(list.size()==0){
i=getnt.delnt(ntid);}
else{
i=0;
}
if(i==0){
req.getSession().setAttribute("shibai", 1);
}
url="tpchshihua?flag=2";
return url;
}
@RequestMapping("insertnt")
public String insertnt(HttpServletRequest req) throws UnsupportedEncodingException{
String url="";
String ntname= req.getParameter("tpname");
ntname=new String(ntname);
News_type r=new News_type();
r.setNtname(ntname);
int i= getnt.insertnt(r);
url="tpchshihua?flag=1";
return url;
}

//分类关键字查询
@RequestMapping("searchNews")
public String searchNews(HttpServletRequest request) throws UnsupportedEncodingException{

String title=request.getParameter("title");
String type=request.getParameter("search-sort");
List<News> list ;
if(type.equals("0")){
list = getnews.listBysearchTitle_noPage(title);
}
else{
try {
int temp = Integer.parseInt(type);
list = getnews.findByTypeandTitle(temp, title);
} catch (Exception e) {
title = "的";
list = getnews.listBysearchTitle_noPage(title);
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
		pageNum = 1;
} else {
pageNum = Integer.parseInt(request.getParameter("pageNum"));
}
ModelAndView modelAndView = new ModelAndView();

String title=(String)request.getSession().getAttribute("title");
System.out.println("======"+title+"======");
List<News> listByNtid = newsMapper.listBysearchTitle(title);// 首先进行条件查询,返回一个news的list
for(News n:listByNtid){
System.out.println("==="+n.getTitle()+"===");
}
List<News> listByNtid1 = getnews.list(pageNum, listByNtid).getList();// 对该条件查询返回一个分页后的list链表
pageNum = getnews.list(pageNum, listByNtid).getPageNum();
int totalPage1 = getnews.list(pageNum, listByNtid).getPages();
request.getSession().setAttribute("pageNum", pageNum);// 在session对象中传递当前页数
request.getSession().setAttribute("totalPage", totalPage1);// 总页数
modelAndView.addObject("itemsList", listByNtid1);//放入到模型对象中
modelAndView.setViewName("searchByTitle.jsp");// 进行jsp页面的跳转

return modelAndView;


}

@RequestMapping("searchByTitle1")
//该方法实现了新闻按标题查询概览的显示功能
public String searchByTitle1(
@RequestParam(value = "pn", defaultValue = "1") Integer pn,
Model model,HttpServletRequest request){
// 从第一条开始 每页查询五条数据
PageHelper.startPage(pn, 5);
String title=request.getParameter("title");
request.setAttribute("title", title);
ModelAndView modelAndView = new ModelAndView();
List<News> list = newsMapper.listBysearchTitle(title.replace("'", ""));// 首先进行条件查询,返回一个news的list
PageInfo page = new PageInfo(list, 5);
model.addAttribute("pageInfo", page);
return "searchByTitle1.jsp";





}


// 分页查询新闻
@RequestMapping("NewsInfo")
public String NewsInfo(
@RequestParam(value = "pn", defaultValue = "1") Integer pn, //利用注解来获取页面post的属性
Model model,HttpServletRequest req) {
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
		if (phone != null & phone.equals("")) {
tel = Integer.parseInt(phone);
}
String email = request.getParameter("email");
userService.update(name, pwd, tel, email, uid2);
session.setAttribute("modifyUser", userById2);
}
return "redirect:login.jsp";
}

@RequestMapping("findpwd")
public String findpwd(HttpServletRequest request,
HttpServletResponse response) {
HttpSession session = request.getSession();
String name = request.getParameter("username");
String tel = request.getParameter("phone_number");
String email = request.getParameter("email");
User userByName = userService.findUserByName(name);
userByName.getUid();
Integer i = userByName.getTel();
String s = i + "";
String sqlTel = s + tel.substring(10, 11);
String sqlEamil = userByName.getEmail();
session.setAttribute("userByName", userByName);
// Integer intSqlName = Integer.parseInt(sqlName);
if (tel.equals(sqlTel) && email.equals(sqlEamil)) {
return "redirect:modifyPwd.jsp";
} else {
return "redirect:findPwd.jsp?find=notFind!";
}
}

@RequestMapping("modifyPwd")
public String modifyPwd(HttpServletRequest request,
HttpServletResponse response) {
User user = (User) request.getSession().getAttribute("userByName");
Integer uid = user.getUid();
String password = request.getParameter("password");
String rePasword = request.getParameter("confirm_password");
if (password.equals(rePasword)) {
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
	public String test1(HttpServletRequest request) throws Exception{
MultipartHttpServletRequest mrequest = (MultipartHttpServletRequest) request;
List<MultipartFile> files = mrequest.getFiles("duofile");//通过获取页面中文件域的name属性,得到对应的文件对象 ,装载成一个List集合
//调用自己写的文件上传工具类 FileUploadUtils 的upLoadFile方法实现多文件上传到服务器的某个路径下
// upLoadFile param1 request对象 ,为了获取服务url路径的某些信息
// param2 上传的多个文件对象
// param3 上传的路径
Map<String, UploadFile> upLoadFile = FileUploadUtils.upLoadFile(request,files , "newsimg");
System.out.println(upLoadFile);
for(Map.Entry<String, UploadFile> imgs :upLoadFile.entrySet()){
System.out.println(imgs.getKey());
System.out.println(imgs.getValue().getFileSize());
System.out.println(imgs.getValue().getFileType());
System.out.println(imgs.getValue().getNewFileName());
System.out.println(imgs.getValue().getNewFilePath());
System.out.println(imgs.getValue().getNewFileUrl());
String url=imgs.getValue().getNewFileUrl();
Source source=new Source();
source.setSrc(url.replace("newsimg","ssm_news_system/newsimg"));
source.setType(1);
source.setNid(Integer.parseInt(request.getParameter("nid")));
int i=sourceService.insert(source);
System.out.println("============"+i);
//request.setAttribute("url", url);
request.getSession().setAttribute("url", url);
System.out.println(imgs.getValue().getOriginalFileName());


}
return "redirect:houtai/file.jsp";
}
}
package com.news.controller;





项目链接:
https://javayms.github.io?id=282122102205200lw
https://javayms.pages.dev?id=282122102205200lw