基于javaweb+mysql的ssm茶叶溯源系统(java+ssm+jsp+bootstrap+layui+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SSM茶叶溯源系统(java+ssm+jsp+bootstrap+layui+mysql)
项目介绍
茶叶溯源系统,分为前台与后台。普通用户可在前台通过18位的编码查询茶叶的出售历史。 后台分为两种角色,管理员与经销商; 管理员主要功能包括: 主界面; 管理员管理:管理员列表、添加管理员; 分类管理:茶叶类型的添加、删除、修改; 茶叶管理:茶叶列表、添加、删除、修改茶叶; 大包装管理:大包装列表、添加、删除、修改大包装; 单品管理:售出统计、单品信息修改; 经销商主要功能包括: 主界面; 售出单品:确认售出单品;
环境需要
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.是否Maven项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目 6.数据库:MySql 5.7版本;
技术栈
- 后端:Spring SpringMVC MyBatis 2. 前端:JSP+bootstrap+jQuery+layUI
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置; 3. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行; 4. 运行项目,输入localhost:8080/tea-web/ 登录
@Controller
public class PackController {
@Autowired
PackService pa;
@Autowired
ItemService it;
public static String getRandomUUID() {
//1、创建时间戳
java.util.Date dateNow = new java.util.Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String dateNowStr = dateFormat.format(dateNow);
StringBuffer sb = new StringBuffer(dateNowStr);
//2、创建随机对象
Random rd = new Random();
//3、产生4位随机数
String n = "";
int rdGet; //取得随机数
do {
rdGet = Math.abs(rd.nextInt()) % 10 + 48; //产生48到57的随机数(0-9的键位值)
// rdGet=Math.abs(rd.nextInt())%26+97; //产生97到122的随机数(a-z的键位值)
char num1 = (char) rdGet;
String dd = Character.toString(num1);
n += dd;
it.deleteByPackId(packId);
pa.delete(packId);
return "ok";
}
}
@Controller
public class TeasController {
@Autowired
TeasDao teasDao;
@Autowired
TeasService ts;
@Autowired
TypeService ts1;
/*
* 重复代码块,用来进行插入和更改时的时候对其进行调用。
*/
@RequestMapping("/TeasPage")
public ModelAndView TeasPage(
@RequestParam(defaultValue="1") Integer currentPage,Map<String,Object> map){
System.out.println("已到达");
PageHelper.startPage(currentPage,8);
@Controller
public class RetailerController {
@Autowired
RetailerService re;
public Retailer getParameter(HttpServletRequest request)throws Exception{
Retailer record=new Retailer();
record.setAccount(request.getParameter("account"));
record.setPwd(request.getParameter("pwd"));
record.setRetName(request.getParameter("retName"));
return record;
}
@RequestMapping("/RetailerLoginPage")
public String RetailerLoginPage(HttpServletRequest request,HttpServletResponse response,HttpSession session
) throws UnknownHostException{
return "views/retailer_login";
}
@RequestMapping("/RetailerLogin")
public String RetailerLogin(HttpServletRequest request,HttpServletResponse response,HttpSession session
) throws UnknownHostException{
String account=request.getParameter("account");
String password=request.getParameter("pwd");
Retailer retailer = re.selectByAccount(account);
System.out.print("************************");
if(account==null){
request.setAttribute("msg", "零售商不存在");
System.out.print("零售商不存在");
return "views/login";
}
record.setTeaMaker(request.getParameter("teaMaker"));
record.setMakePicture(request.getParameter("makePicture"));
record.settId(Integer.parseInt(request.getParameter("tId")));
record.setRetId(Integer.parseInt(request.getParameter("retId")));
return record;
}
@RequestMapping("/PackPage")
public ModelAndView TeasPage(
@RequestParam(defaultValue="1") Integer currentPage,Map<String,Object> map){
System.out.println("已到达");
PageHelper.startPage(currentPage,8);
List<Pack> list=pa.selectAll();
PageInfo<Pack> pageInfo=new PageInfo<Pack>(list,8);
map.put("pageInfo", pageInfo);
return new ModelAndView("/views/list_pack");
}
@RequestMapping("/InsertPack")
public ModelAndView InsertPack(HttpServletRequest request,MultipartFile makePicture)throws Exception {
Pack record=new Pack();
record.setPackId(getRandomUUID());;
record.setMakePicture(UploadUtil.fileUpload(makePicture));
record.setMakeAdress(request.getParameter("makeAdress"));
record.setTeaMaker(request.getParameter("teaMaker"));
record.setRetId(Integer.parseInt(request.getParameter("retId")));
record.settId(Integer.parseInt(request.getParameter("tId")));
pa.insert(record);
for(int i =0; i< 10;i++) {
Item item=new Item();
item.setItemId(getRandomUUID());
item.setSaled(0);
item.setPackId(record.getPackId());
it.insert(item);
}
return new ModelAndView("redirect:PackPage");
}
@RequestMapping("/DeletePack")
@ResponseBody
public String deletePack(@Param("packId") String packId) {
System.out.println(" ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
System.out.print(packId);
System.out.print(" 66666666666666666666666666666666666666666");
it.deleteByPackId(packId);
pa.delete(packId);
return "ok";
}
}
@RequestMapping("/toLoginOutRetailer")
public String toViewsLoginOutRetailer(HttpServletRequest request) {
request.getSession().invalidate();
return "views/retailer_login";
}
@RequestMapping("/toWebHome")
public String toWebHome(HttpServletRequest request) {
return "web/main1";
}
@RequestMapping("/toWebLoginOut")
public String toWebLoginOut(HttpServletRequest request) {
request.getSession().invalidate();
return "web/login";
}
@RequestMapping("/toViewsInfo")
public String toViewsInfo(HttpServletRequest request) {
return "views/info";
}
@RequestMapping("/toViewsAddAdmin")
public String toViewsAddAdmin(HttpServletRequest request) {
return "views/add_admin";
}
@RequestMapping("/toViewsAddUser")
public String toViewsAddUse() {
return "views/add_user";
}
@RequestMapping("/toWebRegiste")
public ModelAndView toWebRegiste() {
return new ModelAndView("web/register");
}
/*
* @RequestMapping("")
public String() {
return "views/addAdmin";
}*/
@RequestMapping("toWebLogin")
public String toWebLogin() {
return "/web/login2";
}
return "views/admin_login";
}
//查询并分页
@RequestMapping("/AdminPage")
public ModelAndView AdminPage(
@RequestParam(defaultValue="1") Integer currentPage,Map<String,Object> map){
System.out.println("已到达");
PageHelper.startPage(currentPage,8);
List<Admin> list=as.selectAll();
PageInfo<Admin> pageInfo=new PageInfo<Admin>(list,8);
map.put("pageInfo", pageInfo);
return new ModelAndView("views/admin");
}
@RequestMapping("/InsertAdmin")
public ModelAndView addAdmin(HttpServletRequest request,String uname,String pwd,String nickname)throws Exception {
Admin record=new Admin();
record.setUname(uname);
record.setPwd(nickname);
record.setNickname(nickname);
as.insert(record);
return new ModelAndView("redirect:AdminPage");
}
//根据主键删除id
@RequestMapping("/DeleteByAdminId")
@ResponseBody
public String deleteByPrimaryKey(@Param("id") int id) {
as.delete(id);
return "ok";
}
@RequestMapping(value="/ToUpdateAdmin")
public String ToUpdateAdmin(HttpServletRequest request,int id) {
Admin admin=as.findById(id);
request.setAttribute("admin", admin);
return "views/update_admin";
}
@RequestMapping("/UpdateAdmin")
public ModelAndView UpdateAdmin(HttpServletRequest request,int id,String uname,String pwd,String nickname)throws Exception {
Admin record=new Admin();
record.setUname(uname);
record.setPwd(pwd);
record.setNickname(nickname);
as.update(record,id);
return new ModelAndView("redirect:AdminPage");
Admin admin=as.findById(id);
request.setAttribute("admin", admin);
return "views/update_admin";
}
@RequestMapping("/UpdateAdmin")
public ModelAndView UpdateAdmin(HttpServletRequest request,int id,String uname,String pwd,String nickname)throws Exception {
Admin record=new Admin();
record.setUname(uname);
record.setPwd(pwd);
record.setNickname(nickname);
as.update(record,id);
return new ModelAndView("redirect:AdminPage");
}
/*//模糊查询
@RequestMapping("/selectByName")
public String findByName(
@RequestParam(defaultValue="1") Integer currentPage,
HttpServletRequest request,Map<String,Object> map) {
String Adminname=request.getParameter("search");
System.out.println(Adminname);
PageHelper.startPage(currentPage,8);
List<Admin> list=AdminService.selectByName(Adminname);
PageInfo<Admin> pageInfo=new PageInfo<Admin>(list,8);
map.put("pageInfo", pageInfo);
return "/Admin/showAdmin";
}*/
}
return "views/info";
}
@RequestMapping("/toViewsAddAdmin")
public String toViewsAddAdmin(HttpServletRequest request) {
return "views/add_admin";
}
@RequestMapping("/toViewsAddUser")
public String toViewsAddUse() {
return "views/add_user";
}
@RequestMapping("/toWebRegiste")
public ModelAndView toWebRegiste() {
return new ModelAndView("web/register");
}
/*
* @RequestMapping("")
public String() {
return "views/addAdmin";
}*/
@RequestMapping("toWebLogin")
public String toWebLogin() {
return "/web/login2";
}
@RequestMapping("toViewsAddTeas")
public String toViewsAddTeas(HttpServletRequest request) {
request.setAttribute("typeList", ts.selectAll());
return "views/add_teas";
}
@RequestMapping("toViewsAddPack")
public String toViewsAddPack(HttpServletRequest request) {
request.setAttribute("teaList", tea.selectAll());
request.setAttribute("retailerList", re.selectAll());
return "views/add_pack";
}
}
public class PackController {
@Autowired
PackService pa;
@Autowired
ItemService it;
public static String getRandomUUID() {
//1、创建时间戳
java.util.Date dateNow = new java.util.Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String dateNowStr = dateFormat.format(dateNow);
StringBuffer sb = new StringBuffer(dateNowStr);
//2、创建随机对象
Random rd = new Random();
//3、产生4位随机数
String n = "";
int rdGet; //取得随机数
do {
rdGet = Math.abs(rd.nextInt()) % 10 + 48; //产生48到57的随机数(0-9的键位值)
// rdGet=Math.abs(rd.nextInt())%26+97; //产生97到122的随机数(a-z的键位值)
char num1 = (char) rdGet;
String dd = Character.toString(num1);
n += dd;
} while (n.length() < 4);// 假如长度小于4
sb.append(n);
//4、返回唯一码
return sb.toString();
}
public Pack getParameter(HttpServletRequest request)throws Exception{
Pack record=new Pack();
record.setPackId(request.getParameter("packId"));
record.setMakeAdress(request.getParameter("makeAdress"));
record.setTeaMaker(request.getParameter("teaMaker"));
record.setMakePicture(request.getParameter("makePicture"));
record.settId(Integer.parseInt(request.getParameter("tId")));
record.setRetId(Integer.parseInt(request.getParameter("retId")));
return record;
}
@RequestMapping("/PackPage")
public ModelAndView TeasPage(
@RequestParam(defaultValue="1") Integer currentPage,Map<String,Object> map){
System.out.println("已到达");
PageHelper.startPage(currentPage,8);
List<Pack> list=pa.selectAll();
@Controller
public class PackController {
@Autowired
PackService pa;
@Autowired
ItemService it;
public static String getRandomUUID() {
//1、创建时间戳
java.util.Date dateNow = new java.util.Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String dateNowStr = dateFormat.format(dateNow);
StringBuffer sb = new StringBuffer(dateNowStr);
//2、创建随机对象
Random rd = new Random();
//3、产生4位随机数
String n = "";
int rdGet; //取得随机数
do {
rdGet = Math.abs(rd.nextInt()) % 10 + 48; //产生48到57的随机数(0-9的键位值)
// rdGet=Math.abs(rd.nextInt())%26+97; //产生97到122的随机数(a-z的键位值)
char num1 = (char) rdGet;
String dd = Character.toString(num1);
n += dd;
} while (n.length() < 4);// 假如长度小于4
sb.append(n);
//4、返回唯一码
return sb.toString();
}
}
//根据主键删除id
@RequestMapping("/DeleteByAdminId")
@ResponseBody
public String deleteByPrimaryKey(@Param("id") int id) {
as.delete(id);
return "ok";
}
@RequestMapping(value="/ToUpdateAdmin")
public String ToUpdateAdmin(HttpServletRequest request,int id) {
Admin admin=as.findById(id);
request.setAttribute("admin", admin);
return "views/update_admin";
}
@RequestMapping("/UpdateAdmin")
public ModelAndView UpdateAdmin(HttpServletRequest request,int id,String uname,String pwd,String nickname)throws Exception {
Admin record=new Admin();
record.setUname(uname);
record.setPwd(pwd);
record.setNickname(nickname);
as.update(record,id);
return new ModelAndView("redirect:AdminPage");
}
/*//模糊查询
@RequestMapping("/selectByName")
public String findByName(
@RequestParam(defaultValue="1") Integer currentPage,
HttpServletRequest request,Map<String,Object> map) {
String Adminname=request.getParameter("search");
System.out.println(Adminname);
PageHelper.startPage(currentPage,8);
List<Admin> list=AdminService.selectByName(Adminname);
PageInfo<Admin> pageInfo=new PageInfo<Admin>(list,8);
map.put("pageInfo", pageInfo);
return "/Admin/showAdmin";
}*/
}
@Controller
public class PackController {
@Autowired
PackService pa;
@Autowired
ItemService it;
public static String getRandomUUID() {
//1、创建时间戳
java.util.Date dateNow = new java.util.Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String dateNowStr = dateFormat.format(dateNow);
StringBuffer sb = new StringBuffer(dateNowStr);
//2、创建随机对象
Random rd = new Random();
//3、产生4位随机数
String n = "";
int rdGet; //取得随机数
do {
rdGet = Math.abs(rd.nextInt()) % 10 + 48; //产生48到57的随机数(0-9的键位值)
// rdGet=Math.abs(rd.nextInt())%26+97; //产生97到122的随机数(a-z的键位值)
char num1 = (char) rdGet;
String dd = Character.toString(num1);
n += dd;
} while (n.length() < 4);// 假如长度小于4
sb.append(n);
//4、返回唯一码
return sb.toString();
}
public Pack getParameter(HttpServletRequest request)throws Exception{
Pack record=new Pack();
record.setPackId(request.getParameter("packId"));
record.setMakeAdress(request.getParameter("makeAdress"));
record.setTeaMaker(request.getParameter("teaMaker"));
record.setMakePicture(request.getParameter("makePicture"));
record.settId(Integer.parseInt(request.getParameter("tId")));
record.setRetId(Integer.parseInt(request.getParameter("retId")));
return record;
}
@RequestMapping("/PackPage")
public ModelAndView TeasPage(
@RequestParam(defaultValue="1") Integer currentPage,Map<String,Object> map){
System.out.println("已到达");
}
@RequestMapping("/InsertPack")
public ModelAndView InsertPack(HttpServletRequest request,MultipartFile makePicture)throws Exception {
Pack record=new Pack();
record.setPackId(getRandomUUID());;
record.setMakePicture(UploadUtil.fileUpload(makePicture));
record.setMakeAdress(request.getParameter("makeAdress"));
record.setTeaMaker(request.getParameter("teaMaker"));
record.setRetId(Integer.parseInt(request.getParameter("retId")));
record.settId(Integer.parseInt(request.getParameter("tId")));
pa.insert(record);
for(int i =0; i< 10;i++) {
Item item=new Item();
item.setItemId(getRandomUUID());
item.setSaled(0);
item.setPackId(record.getPackId());
it.insert(item);
}
return new ModelAndView("redirect:PackPage");
}
@RequestMapping("/DeletePack")
@ResponseBody
public String deletePack(@Param("packId") String packId) {
System.out.println(" ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
System.out.print(packId);
System.out.print(" 66666666666666666666666666666666666666666");
it.deleteByPackId(packId);
pa.delete(packId);
return "ok";
}
}
}
@Controller
public class AdminController {
@Autowired
AdminService as;
/*
* 重复代码块,用来进行插入和更改时的时候对其进行调用。
*/
public Admin getParameter(HttpServletRequest request)throws Exception{
Admin record=new Admin();
record.setUname(request.getParameter("uname"));
record.setPwd(request.getParameter("pwd"));
record.setNickname(request.getParameter("nickname"));
return record;
}
@RequestMapping("/AdminLogin")
public String AdminLogin(HttpServletRequest request,HttpServletResponse response,HttpSession session
) throws UnknownHostException{
public ModelAndView InsertPack(HttpServletRequest request,MultipartFile makePicture)throws Exception {
Pack record=new Pack();
record.setPackId(getRandomUUID());;
record.setMakePicture(UploadUtil.fileUpload(makePicture));
record.setMakeAdress(request.getParameter("makeAdress"));
record.setTeaMaker(request.getParameter("teaMaker"));
record.setRetId(Integer.parseInt(request.getParameter("retId")));
record.settId(Integer.parseInt(request.getParameter("tId")));
pa.insert(record);
for(int i =0; i< 10;i++) {
Item item=new Item();
item.setItemId(getRandomUUID());
item.setSaled(0);
item.setPackId(record.getPackId());
it.insert(item);
}
return new ModelAndView("redirect:PackPage");
}
@RequestMapping("/DeletePack")
@ResponseBody
public String deletePack(@Param("packId") String packId) {
System.out.println(" ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
System.out.print(packId);
System.out.print(" 66666666666666666666666666666666666666666");
it.deleteByPackId(packId);
pa.delete(packId);
return "ok";
}
}
public ModelAndView InsertPack(HttpServletRequest request,MultipartFile makePicture)throws Exception {
Pack record=new Pack();
record.setPackId(getRandomUUID());;
record.setMakePicture(UploadUtil.fileUpload(makePicture));
record.setMakeAdress(request.getParameter("makeAdress"));
record.setTeaMaker(request.getParameter("teaMaker"));
record.setRetId(Integer.parseInt(request.getParameter("retId")));
record.settId(Integer.parseInt(request.getParameter("tId")));
pa.insert(record);
for(int i =0; i< 10;i++) {
Item item=new Item();
item.setItemId(getRandomUUID());
item.setSaled(0);
item.setPackId(record.getPackId());
it.insert(item);
}
return new ModelAndView("redirect:PackPage");
}
@RequestMapping("/DeletePack")
@ResponseBody
public String deletePack(@Param("packId") String packId) {
System.out.println(" ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
System.out.print(packId);
System.out.print(" 66666666666666666666666666666666666666666");
it.deleteByPackId(packId);
pa.delete(packId);
return "ok";
}
}
@RequestMapping("/DeleteByItemId")
@ResponseBody
public String deleteByTeasId(@Param("deleteItemId") String deleteItemId) {
it.delete(deleteItemId);
return "ok";
}
@RequestMapping(value="/ToUpdateItem")
public String ToUpdateItem(HttpServletRequest request,String itemId) {
request.setAttribute("packList", pa.selectAll());
request.setAttribute("itemId", itemId);
return "views/update_item";
}
@RequestMapping("/UpdateItem")
public ModelAndView UpdateItem(HttpServletRequest request)throws Exception {
Item record = new Item();
record.setItemId(request.getParameter("itemId"));
record.setPackId(request.getParameter("packId"));
it.updatePackId(record);
return new ModelAndView("redirect:ModifyItem");
}
@RequestMapping("/FindItem")
public ModelAndView FindItem(HttpServletRequest request,@Param("searchInput") String searchInput)throws Exception {
FindList list = fi.findList(searchInput);
FindList list2 = fi.findList2(searchInput);
request.setAttribute("List_item", list);
request.setAttribute("List_pack", list2);
System.out.print(list);
// if(list2 != null) {
// return new ModelAndView("/views/result_1");
// }else if(list.getSaled() == 0) {
// return new ModelAndView("/views/result_2");
// }else {
// return new ModelAndView("/views/result_3");
// }
if(list2 == null) {
return new ModelAndView("/views/result_3");
}else if(list.getSaled() == 0) {
return new ModelAndView("/views/result_2");
}else {
return new ModelAndView("/views/result_1");
}
}
}