基于javaweb+mysql的ssm新闻管理系统(java+ssm+js+jsp+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的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版本;
技术栈
- 后端:Spring+SpringMVC+Mybatis 2. 前端:HTML+CSS+JavaScript+jsp
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ 登录
@RequestMapping("manager")
public class ManagerHandler{
@Autowired
ManagerService managerService;
// 添加管理员并重定向
@RequestMapping("addManager")
public String addManager(HttpServletRequest req){
String name=req.getParameter("managerName");
String pwd=req.getParameter("managerPassword");
Manager manager=new Manager();
manager.setMname(name);
manager.setPwd(pwd);
if(manager != null){
managerService.saveManager(manager);
}
return "redirect:ManagerInfo";
}
// 修改管理员信息
@RequestMapping("editManager")
public String editUser(HttpServletRequest req){
String id=req.getParameter("editManagerid");
String pwd=req.getParameter("editPassword");
String name=req.getParameter("editManagername");
Manager manager = managerService.findUserById(Integer.parseInt(id));
manager.setMname(name);
manager.setPwd(pwd);
managerService.updateUser(manager);
//managerService.deleteManager(Integer.parseInt(id));
return "redirect:ManagerInfo";
}
// 查询所有管理员
@RequestMapping("getAllManager")
public String getAllUser(Model model){
List<Manager> manager = managerService.findAll();
model.addAttribute("managerList",manager);
return "houtai/allManager.jsp";
}
// 查询单个管理员
@RequestMapping("getManager")
/**
*
*实现对赞助的管理
*/
@Controller
@RequestMapping("support")
public class SupportHandler{
@Autowired
SupportService supportService;
//跳转到添加用户界面
@RequestMapping("toAddSupport")
public String toAddUser(){
return "houtai/allSupport.jsp";
}
// 添加赞助并重定向
@RequestMapping("addSupport")
public String addManager(HttpServletRequest req){
String name=req.getParameter("SupportName");
String money=req.getParameter("addMoney");
String text=req.getParameter("addText");
Support support=new Support();
support.setSname(name);
support.setSmoney(money);
support.setText(text);
if(support != null){
supportService.savaSupport(support);
}
return "redirect:SupportInfo";
}
String pwd=req.getParameter("managerPassword");
Manager manager=new Manager();
manager.setMname(name);
manager.setPwd(pwd);
if(manager != null){
managerService.saveManager(manager);
}
return "redirect:ManagerInfo";
}
// 修改管理员信息
@RequestMapping("editManager")
public String editUser(HttpServletRequest req){
String id=req.getParameter("editManagerid");
String pwd=req.getParameter("editPassword");
String name=req.getParameter("editManagername");
Manager manager = managerService.findUserById(Integer.parseInt(id));
manager.setMname(name);
manager.setPwd(pwd);
managerService.updateUser(manager);
//managerService.deleteManager(Integer.parseInt(id));
return "redirect:ManagerInfo";
}
// 查询所有管理员
@RequestMapping("getAllManager")
public String getAllUser(Model model){
List<Manager> manager = managerService.findAll();
model.addAttribute("managerList",manager);
return "houtai/allManager.jsp";
}
// 查询单个管理员
@RequestMapping("getManager")
public String getUser(int mid,Model model){
model.addAttribute("user", managerService.findUserById(mid));
return "editUser";
}
@RequestMapping("delManager")
public String deleteUser(HttpServletRequest req) {
Integer mid=Integer.parseInt(req.getParameter("id"));
managerService.deleteManager(mid);
return "redirect:ManagerInfo";
}
+ day + File.separator;
}
public static void main(String[] args) {
System.out.println(FileUploadUtils.randomFileName());
}
}
package com.news.controller;
/**
*
*实现对赞助的管理
*/
@Controller
@RequestMapping("support")
public class SupportHandler{
@Autowired
SupportService supportService;
//跳转到添加用户界面
@RequestMapping("toAddSupport")
public String toAddUser(){
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) {
// 从第一条开始 每页查询五条数据
PageHelper.startPage(pn, 5);
String ntid=null,ntid1 = null;
ntid=req.getParameter("ntid");
PageInfo page = new PageInfo( support,5);
model.addAttribute("pageInfo", page);
// return "houtai/support.jsp";
return "houtai/support.jsp";
}
//返回后台首页
@RequestMapping("index")
public String index(){
return "redirect:houtai/index.jsp";
}
}
package com.news.controller;
/**
*
* 实现对管理员的管理
*/
@Controller
@RequestMapping("manager")
public class ManagerHandler{
@Autowired
ManagerService managerService;
// 添加管理员并重定向
@RequestMapping("addManager")
public String addManager(HttpServletRequest req){
String name=req.getParameter("managerName");
String pwd=req.getParameter("managerPassword");
Manager manager=new Manager();
manager.setMname(name);
int rid=Integer.parseInt(req.getParameter("rid"));
int i=getr.delreview(rid);
String flag=req.getParameter("flag");
url="gainews?flag="+flag;
return url;
}
@RequestMapping("yeswes")
public String yeswes(HttpServletRequest req){
String rul="";
List<News_type> list1=getnt.getnewstype();
req.getSession().setAttribute("newstypelist1", list1);
int nid=Integer.parseInt(req.getParameter("nid"));
String title=req.getParameter("title");
String ntext=req.getParameter("content");
int hot;
if(req.getParameter("hot")!=null)
hot=Integer.parseInt(req.getParameter("hot"));
else hot=1;
int isreview;
if(req.getParameter("isreview")!=null){
isreview=Integer.parseInt(req.getParameter("isreview"));}
else isreview=0;
String author=req.getParameter("author");
int ntid=Integer.parseInt(req.getParameter("typeid"));
News n=new News();
n.setNid(nid);
n.setAuthor(author);
n.setNtext(ntext);
n.setNtid(ntid);
n.setIsreview(isreview);
n.setTitle(title);
n.setHot(hot);
n.setNtime(new java.sql.Date(new java.util.Date().getTime()));
int x= getnews.gainews(n);
if(x>0){
req.getSession().setAttribute("sussion", "yes");
}else{req.getSession().setAttribute("sussion", "no");}
rul="redirect:houtai/design.jsp";
return rul;
}
*//**
*
*//*
@Controller
public class kaishi {
@Autowired
getNewtype getnt;
@Autowired
getNews getnews;
@RequestMapping("chushihuanewstype")
public String chushihuanewstype(HttpServletRequest req){
String url="";
List<News_type> list=getnt.getnewstype();
req.getSession().setAttribute("newstypelist", list);
List<News> list1=getnews.findnewByhot(0);
List<News> list2=getnews.findnewByhot(0);
for(int i=0;i<list2.size();i++){
if(list2.get(i).getNtext().length()>200){
list2.get(i).setNtext((String) list2.get(i).getNtext().subSequence(0,200));
}
}
req.getSession().setAttribute("newshotlist", list1);
req.getSession().setAttribute("newshotlist1", list2);
list1=getnews.findnewByhotType(0, 1);
req.getSession().setAttribute("newszhenzhihotlist", list1);
list1=getnews.findnewByhotType(0, 2);
req.getSession().setAttribute("newsjunshihotlist", list1);
list1=getnews.findnewByhotType(0, 3);
req.getSession().setAttribute("newstiyuhotlist", list1);
list1=getnews.findnewByhotType(0, 4);
req.getSession().setAttribute("newsyulehotlist", list1);
url="redirect:index.jsp";
return url;
}
}
*/
/**
*
*/
@Controller
public class UserHandler {
@Autowired
UserService userService;
@Autowired
ManagerService managerService;
User loginUser;
Manager loginManager;
@RequestMapping("register")
// 用户注册
public String register(HttpServletRequest req)
throws UnsupportedEncodingException {
req.setCharacterEncoding("utf-8");
String url = "";
System.out.println("=================");
String username = req.getParameter("username");
String password = req.getParameter("password");
String phone_number = req.getParameter("phone_number").substring(0, 10);
String email = req.getParameter("email");
User existUser = userService.findUserByName(username);
if (null != existUser) {
req.getSession().setAttribute("mesg1", "该用户名已注册!");
@Controller
public class uploadfiles {
@Autowired
SourceService sourceService;
@RequestMapping("uploadfiles")
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;
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;
*//**
*
*//*
@Controller
public class kaishi {
@Autowired
getNewtype getnt;
@Autowired
+ newFileName;
// 创建文件路径
File saveFileDirectory = new File(dir);
if (!saveFileDirectory.exists()) {
saveFileDirectory.mkdirs();
}
// 新建文件
File createFiles = new File(newFilePath);
long fileSize = file.getSize();
String fileType = file.getContentType();
//通过上面的代码实现了文件属性的拼接,生成操作,最后利用UploadFile,实例化一个文件对象
UploadFile uploadFile = new UploadFile(originalFileName,
newFileName, newFilePath, newFileUrl, fileType,
fileSize);
//将文件对象放入map集合
map.put(originalFileName, uploadFile);
//上传文件spring框架提供的功能
file.transferTo(createFiles);
}
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
return map;
}
/**
* 随机分配文件名
*
* @return 29e6c3676c23466c8735bcc4d157ee08
*/
private static String randomFileName() {
String name = UUID.randomUUID().toString();
name = name.replaceAll("-", "");
return name;
}
/**
* 产生日期的文件夹
*
* @return \2017\02\25\
*/
private static String dateFileDirectory() {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DATE);
manager.setPwd(pwd);
managerService.updateUser(manager);
//managerService.deleteManager(Integer.parseInt(id));
return "redirect:ManagerInfo";
}
// 查询所有管理员
@RequestMapping("getAllManager")
public String getAllUser(Model model){
List<Manager> manager = managerService.findAll();
model.addAttribute("managerList",manager);
return "houtai/allManager.jsp";
}
// 查询单个管理员
@RequestMapping("getManager")
public String getUser(int mid,Model model){
model.addAttribute("user", managerService.findUserById(mid));
return "editUser";
}
@RequestMapping("delManager")
public String deleteUser(HttpServletRequest req) {
Integer mid=Integer.parseInt(req.getParameter("id"));
managerService.deleteManager(mid);
return "redirect:ManagerInfo";
}
///分页查询管理员信息
@RequestMapping("ManagerInfo")
public String getUsers(@RequestParam(value="pn",defaultValue="1")Integer pn,Model model){
//从第一条开始 每页查询五条数据
PageHelper.startPage(pn, 5);
List<Manager> manager = managerService.findAll();
//将用户信息放入PageInfo对象里
PageInfo page = new PageInfo( manager,5);
model.addAttribute("pageInfo", page);
return "houtai/allManager.jsp";
/* return "houtai/test.jsp";*/
}
}
return url;
}
@RequestMapping("Managerlogin")
// 管理员登录
public String Managerlogin(HttpServletRequest req,
HttpServletResponse response) throws IOException {
req.setCharacterEncoding("utf-8");
String url = "";
String name = req.getParameter("username");
String pwd = req.getParameter("password");
Manager m = new Manager();
m.setMname(name);
m.setPwd(pwd);
loginManager = managerService.findManager(m);
if (loginManager == null) {
/* req.getSession().setAttribute("mesg", "用户名或密码错误!"); */
url = "redirect:houtai/admin_login.jsp?mesg=Name or Password Error!";
} else {
req.getSession().setAttribute("loginManager", loginManager);
url = "redirect:houtai/index.jsp";
}
return url;
}
@RequestMapping("loginout")
// 注销
public String loginout(HttpServletRequest req, HttpServletResponse response)
throws IOException {
req.getSession().invalidate();
return "redirect:index.jsp";
}
@RequestMapping("toHoutai")
// 转到后台
public String toHoutai(HttpServletRequest req) throws IOException {
req.getSession().invalidate();
return "redirect:houtai/admin_login.jsp";
}
public class kaishi {
@Autowired
getNewtype getnt;
@Autowired
getNews getnews;
@Autowired
getReview getr;
@Autowired
getSupport getsupport;
@Autowired
SourceService sourceService;
@RequestMapping("chushihuanewstype")
public String chushihuanewstype(HttpServletRequest req){
String url="";
List<Source> findAllImg = sourceService.findAllImg();
if(findAllImg!=null)
req.getSession().setAttribute("slist", findAllImg);
req.getSession().setAttribute("size1", findAllImg.size());
if(req.getSession().getAttribute("loginUser")==null){
req.getSession().setAttribute("userid", 0);}else{
User u=(User)req.getSession().getAttribute("loginUser");
req.getSession().setAttribute("userid",u.getUid());
}
List<News_type> list=getnt.getnewstype();
req.getSession().setAttribute("newstypelist", list);
List<News> list1=getnews.findnewByhot(0);
List<News> list2=getnews.findnewByhot(0);
for(int i=0;i<list2.size();i++){
if(list2.get(i).getNtext().length()>200){
list2.get(i).setNtext((String) list2.get(i).getNtext().subSequence(0,200));
}
}
req.getSession().setAttribute("newshotlist", list1);
for(int i=0;i<list1.size()/2;i++){
News n=new News();
n=list1.get(i);
list1.set(i, list1.get(list1.size()-i-1));
list1.set(list1.size()-i-1, n);
}
req.getSession().setAttribute("newshotlistx", list1);
req.getSession().setAttribute("newshotlist1", list2);
list1=getnews.findnewByhotType(0, 1);
req.getSession().setAttribute("newszhenzhihotlist", list1);
*
*/
@Controller
public class pageHandler {
@Autowired
getNews getnews; // 获取到一个news的service
@Resource
NewsMapper newsMapper;
@RequestMapping("queryAllItems")
//该方法实现了新闻分类标题概览的分类显示功能
public ModelAndView Limitlist(HttpServletRequest request) {
String ntId=request.getParameter("ntid");
System.out.println("===NTID====="+ntId);
//request.getSession().setAttribute("ntid", Integer.parseInt(ntId));
request.getSession().setAttribute("ntid", Integer.parseInt(ntId));
int pageNum = 1;
if (request.getParameter("pageNum") == null
|| "".equals(request.getParameter("page"))) {
pageNum = 1;
} else {
pageNum = Integer.parseInt(request.getParameter("pageNum"));
}
ModelAndView modelAndView = new ModelAndView();
Integer ntid=(Integer)request.getAttribute("ntid");
List<News> listByNtid = newsMapper.listByNtid(ntid);// 首先进行条件查询,返回一个news的list
List<News> listByNtid1 = getnews.list(pageNum, listByNtid).getList();// 对该条件查询返回一个分页后的list链表
// List<News> listByNtid1=getnews.list(pageNum,listByNtid);
pageNum = getnews.list(pageNum, listByNtid).getPageNum();
System.out.println(pageNum + "=1111===page");
int totalPage1 = getnews.list(pageNum, listByNtid).getPages();
System.out.println(pageNum + "==================");
System.out.println(totalPage1 + "==================");
request.getSession().setAttribute("pageNum", pageNum);// 在session对象中传递当前页数
request.getSession().setAttribute("totalPage", totalPage1);// 总页数
modelAndView.addObject("itemsList", listByNtid1);// 放入到模型对象中
modelAndView.setViewName("queryAllItems.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) {
// 从第一条开始 每页查询五条数据
PageHelper.startPage(pn, 5);
String ntid=null,ntid1 = null;
ntid=req.getParameter("ntid");
req.setAttribute("ntid", ntid);
List<News> listByNtid = newsMapper.listByNtid(Integer.parseInt(ntid.replace("'", "")));// 首先进行条件查询,返回一个news的list
// 将用户信息放入PageInfo对象里
PageInfo page = new PageInfo(listByNtid, 5);
model.addAttribute("pageInfo", page);
return "queryAllItems1.jsp";
}
// 返回后台首页
@RequestMapping("home")
public String index() {
/*return "redirect:index.jsp";*/
return "chushihuanewstype";
}
}
package com.news.util;
@RequestMapping("index")
public String index(){
return "houtai/index.jsp";
}
//二级密码验证
@RequestMapping("check")
public String check(HttpServletRequest req){
String password=req.getParameter("managerPassword");
if("123456".equals(password)){
return "manager/ManagerInfo";
}
else {
return "houtai/index.jsp";
}
}
}
package com.news.controller;
/**
* 验证码
*/
public class AuthImage extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
* @param folder
* 要建立的文件夹的名字
* @return
*/
public static Map<String, UploadFile> upLoadFile(
HttpServletRequest request, List<MultipartFile> files, String folder) {
Map<String, UploadFile> map = new HashMap<String, UploadFile>();
if (files != null && files.size() > 0) {
// 1.获取绝对路径
// request.getSession().getServletContext().getRealPath("/")==>
// E:\apache-tomcate-7.0\webapps\项目名
// getParentFile() ==>E:\apache-tomcate-7.0\webapps
File root = new File(request.getSession().getServletContext()
.getRealPath("/"))/*.getParentFile()*/;
// 2.定义图片保存在服务器的那个位置
// ==>E:\apache-tomcate-7.0\webapps\floder(你指定的文件夹名字)
File loaclFilePath = new File(root, folder);
// 3.通过http协议访问的路径 http://localhost:8080/floder(你指定的文件夹名字)
String webFileUrl = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ "/" + folder;
try {
for (MultipartFile file : files) {
// 文件的原始文件名
String originalFileName = file.getOriginalFilename();
if (file.isEmpty()) {
continue;
}
// 随机分配一个新的文件名字给上传的文件
// 29e6c3676c23466c8735bcc4d157ee08.xxx
String newFileName = randomFileName()
+ originalFileName.substring(originalFileName
.lastIndexOf("."));
// E:\apache-tomcate-7.0\webapps\floder(你指定的文件夹名字)\2017\02\25\
String dir = loaclFilePath.getAbsolutePath()
+ dateFileDirectory();
// 重新创建新的本地文件的路径
// E:\apache-tomcate-7.0\webapps\floder(你指定的文件夹名字)\2017\02\25\29e6c3676c23466c8735bcc4d157ee08.xxx
String newFilePath = dir + newFileName;
// 重新创建新的http协议访问文件的路径
// http://localhost:8080/floder(你指定的文件夹名字)\2017\02\25\29e6c3676c23466c8735bcc4d157ee08.xxx
String newFileUrl = webFileUrl + dateFileDirectory()
+ newFileName;
// 创建文件路径
File saveFileDirectory = new File(dir);
if (!saveFileDirectory.exists()) {
saveFileDirectory.mkdirs();
}
// 新建文件
File createFiles = new File(newFilePath);
long fileSize = file.getSize();
String fileType = file.getContentType();
return modelAndView;
}
@RequestMapping("searchByTitle")
//该方法实现了新闻按标题查询概览的显示功能
public ModelAndView searchByTitle(HttpServletRequest request) {
boolean read=false;
if(read==false){String title=request.getParameter("title");
request.getSession().setAttribute("title", title);
read=true;
}
int pageNum = 1;
if (request.getParameter("pageNum") == null
|| "".equals(request.getParameter("page"))) {
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();
//跳转到添加用户界面
@RequestMapping("toAddSupport")
public String toAddUser(){
return "houtai/allSupport.jsp";
}
// 添加赞助并重定向
@RequestMapping("addSupport")
public String addManager(HttpServletRequest req){
String name=req.getParameter("SupportName");
String money=req.getParameter("addMoney");
String text=req.getParameter("addText");
Support support=new Support();
support.setSname(name);
support.setSmoney(money);
support.setText(text);
if(support != null){
supportService.savaSupport(support);
}
return "redirect:SupportInfo";
}
// 修改赞助信息
@RequestMapping("editSupport")
public String editUser(HttpServletRequest req){
String name=req.getParameter("editSupportname");
String money=req.getParameter("editMoney");
String id=req.getParameter("editSupportId");
String text=req.getParameter("editText");
System.out.println("==="+name);
System.out.println("==="+money);
System.out.println("==="+id);
System.out.println("==="+text);
Support support = supportService.findSupportById(Integer.parseInt(id));
support.setSname(name);
support.setSmoney(money);
support.setText(text);
supportService.updateSupport(support);
//managerService.deleteManager(Integer.parseInt(id));
return "redirect:SupportInfo";
}
public class FileUploadUtils {
// 这个文件上传类主要是配合SpringMVC框架的
// 这里主要是把文件上传到本地Tomcat服务器的webapp下面 ,并返回web的文件访问地址
/**
* 文件上传
*
* @param request
* HTTP请求
* @param files
* 上传的文件
* @param folder
* 要建立的文件夹的名字
* @return
*/
public static Map<String, UploadFile> upLoadFile(
HttpServletRequest request, List<MultipartFile> files, String folder) {
Map<String, UploadFile> map = new HashMap<String, UploadFile>();
if (files != null && files.size() > 0) {
// 1.获取绝对路径
// request.getSession().getServletContext().getRealPath("/")==>
// E:\apache-tomcate-7.0\webapps\项目名
// getParentFile() ==>E:\apache-tomcate-7.0\webapps
File root = new File(request.getSession().getServletContext()
.getRealPath("/"))/*.getParentFile()*/;
// 2.定义图片保存在服务器的那个位置
// ==>E:\apache-tomcate-7.0\webapps\floder(你指定的文件夹名字)
File loaclFilePath = new File(root, folder);
// 3.通过http协议访问的路径 http://localhost:8080/floder(你指定的文件夹名字)
String webFileUrl = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ "/" + folder;
try {
for (MultipartFile file : files) {
// 文件的原始文件名
}
@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);
}
}
request.getSession().setAttribute("searchList", list);
return "houtai/design1.jsp";
}
@RequestMapping("moredel")
public String moredel(HttpServletRequest req){
String url="redirect:xinwenguanli";
List<News> list=getnews.selectNews();
for(int i=1;i<=list.size();i++){
int box=0;
if(req.getParameter("id"+i)!=null){
box=Integer.parseInt(req.getParameter("id"+i));}
if(box==1){
int nid=Integer.parseInt(req.getParameter("nid"+i));
List<regai> r=getr.findreviewBynid(nid);
String url = "";
String u_name = req.getParameter("username");
String pwd = req.getParameter("password");
User u = new User();
u.setUname(u_name);
u.setPwd(pwd);
System.out.println(u.toString());
loginUser = userService.findUser(u);
if (loginUser == null) {
req.getSession().setAttribute("mesg", "用户名或密码错误!");
url = "redirect:login.jsp";
} else {
req.getSession().setAttribute("loginUser", loginUser);
url = "index.jsp";
}
return url;
}
@RequestMapping("Managerlogin")
// 管理员登录
public String Managerlogin(HttpServletRequest req,
HttpServletResponse response) throws IOException {
req.setCharacterEncoding("utf-8");
String url = "";
String name = req.getParameter("username");
String pwd = req.getParameter("password");
Manager m = new Manager();
m.setMname(name);
m.setPwd(pwd);
loginManager = managerService.findManager(m);
if (loginManager == null) {
/* req.getSession().setAttribute("mesg", "用户名或密码错误!"); */
url = "redirect:houtai/admin_login.jsp?mesg=Name or Password Error!";
} else {
req.getSession().setAttribute("loginManager", loginManager);
url = "redirect:houtai/index.jsp";
}
return url;
}
/**
* 文件上传
*
* @param request
* HTTP请求
* @param files
* 上传的文件
* @param folder
* 要建立的文件夹的名字
* @return
*/
public static Map<String, UploadFile> upLoadFile(
HttpServletRequest request, List<MultipartFile> files, String folder) {
Map<String, UploadFile> map = new HashMap<String, UploadFile>();
if (files != null && files.size() > 0) {
// 1.获取绝对路径
// request.getSession().getServletContext().getRealPath("/")==>
// E:\apache-tomcate-7.0\webapps\项目名
// getParentFile() ==>E:\apache-tomcate-7.0\webapps
File root = new File(request.getSession().getServletContext()
.getRealPath("/"))/*.getParentFile()*/;
// 2.定义图片保存在服务器的那个位置
// ==>E:\apache-tomcate-7.0\webapps\floder(你指定的文件夹名字)
File loaclFilePath = new File(root, folder);
// 3.通过http协议访问的路径 http://localhost:8080/floder(你指定的文件夹名字)
String webFileUrl = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ "/" + folder;
try {
for (MultipartFile file : files) {
// 文件的原始文件名
String originalFileName = file.getOriginalFilename();
if (file.isEmpty()) {
continue;
}
// 随机分配一个新的文件名字给上传的文件
// 29e6c3676c23466c8735bcc4d157ee08.xxx
String newFileName = randomFileName()
+ originalFileName.substring(originalFileName
.lastIndexOf("."));
// E:\apache-tomcate-7.0\webapps\floder(你指定的文件夹名字)\2017\02\25\
String dir = loaclFilePath.getAbsolutePath()
String name=req.getParameter("editManagername");
Manager manager = managerService.findUserById(Integer.parseInt(id));
manager.setMname(name);
manager.setPwd(pwd);
managerService.updateUser(manager);
//managerService.deleteManager(Integer.parseInt(id));
return "redirect:ManagerInfo";
}
// 查询所有管理员
@RequestMapping("getAllManager")
public String getAllUser(Model model){
List<Manager> manager = managerService.findAll();
model.addAttribute("managerList",manager);
return "houtai/allManager.jsp";
}
// 查询单个管理员
@RequestMapping("getManager")
public String getUser(int mid,Model model){
model.addAttribute("user", managerService.findUserById(mid));
return "editUser";
}
@RequestMapping("delManager")
public String deleteUser(HttpServletRequest req) {
Integer mid=Integer.parseInt(req.getParameter("id"));
managerService.deleteManager(mid);
return "redirect:ManagerInfo";
}
///分页查询管理员信息