ssm tea traceability system based on javaweb+mysql (java+ssm+jsp+bootstrap+layui+mysql)

ssm tea traceability system based on javaweb + mysql (java + ssm + jsp + bootstrap + layui + mysql)

Operating environment

Java≥8, MySQL≥5.7, Tomcat≥8

development tools

eclipse/idea/myeclipse/sts, etc. can be configured to run

Be applicable

Course design, major assignments, graduation design, project exercises, learning presentations, etc.

Function Description

SSM tea traceability system based on javaweb + mysql (java + ssm + jsp + bootstrap + layui + mysql)

Project Introduction

The tea traceability system is divided into a front office and a back office. Ordinary users can check the sales history of tea through the 18-digit code at the front desk. The backend is divided into two roles, administrators and dealers; the main functions of the administrator include: main interface; administrator management: administrator list, adding administrators; category management: adding, deleting, and modifying tea types; tea management: tea List, add, delete, modify tea; Bulk package management: Bulk package list, add, delete, modify big package; Single product management: Sales statistics, single product information modification; The main functions of dealers include: Main interface; Sales list Product: Confirm the sold item;

environmental needs

1. Operating environment: preferably java jdk 1.8, we run on this platform. Other versions are theoretically possible. 2. IDE environment: IDEA, Eclipse, Myeclipse are all available. IDEA is recommended; 3. Tomcat environment: Tomcat 7.x, 8.x, 9.x versions are available 4. Hardware environment: windows 7/8/10 1G memory or more; or Mac OS; 5. Whether it is a Maven project: No; Check whether the source code directory contains pom.xml; if it does, it is a maven project, otherwise it is a non-maven project 6. Database: MySql version 5.7;

technology stack

  1. Backend: Spring SpringMVC MyBatis 2. Frontend: JSP + bootstrap + jQuery + layUI

Instructions for use

  1. Use Navicat or other tools to create a database with the corresponding name in mysql and import the project’s sql file; 2. Change the database configuration in the jdbc.properties configuration file in the project to your own configuration; 3. Use IDEA/Eclipse/MyEclipse Import the project, when Eclipse/MyEclipse imports, if it is a maven project, please select maven; if it is a maven project, please execute the maven clean;maven install command after the import is successful, configure tomcat, and then run; 4. To run the project, enter localhost:8080/ tea-web/ login
 }
@RequestMapping("/toLoginOutRetailer")
public String toViewsLoginOutRetailer(HttpServletRequest request) {<!-- -->
request.getSession().invalidate();
return "views/retailer_login";
}
\t
@RequestMapping("/toWebHome")
public String toWebHome(HttpServletRequest request) {<!-- -->
\t\t  
return "web/main1";
}
\t
@RequestMapping("/toWebLoginOut")
public String toWebLoginOut(HttpServletRequest request) {<!-- -->
request.getSession().invalidate();
return "web/login";
}
@RequestMapping("/toViewsInfo")
public String toViewsInfo(HttpServletRequest request) {<!-- -->
\t\t 
return "views/info";
}
@RequestMapping("/toViewsAddAdmin")
public String toViewsAddAdmin(HttpServletRequest request) {<!-- -->
return "views/add_admin";
}
\t
@RequestMapping("/toViewsAddUser")
public String toViewsAddUse() {<!-- -->
return "views/add_user";
}
\t
@RequestMapping("/toWebRegiste")
public ModelAndView toWebRegiste() {<!-- -->
return new ModelAndView("web/register");
}
\t
/*
* @RequestMapping("")
public String() {
return "views/addAdmin";
}*/
\t
@RequestMapping("toWebLogin")
public String toWebLogin() {<!-- -->
\t\t
return "/web/login2";
}
\t
@RequestMapping("toViewsAddTeas")
//Delete id based on primary key
@RequestMapping("/DeleteByTypeId")
@ResponseBody
public String deleteByTypeId(@Param("id") Integer id) {<!-- -->
ts.delete(id);
return "ok";
}

}

@Controller
public class UtilsController {<!-- -->
\t
@Autowired
TypeService ts;
\t
@Autowired
TeasService tea;
\t
@Autowired
RetailerService re;
\t
@RequestMapping("/toViewsLogin")
public String toViewsLogin(){<!-- -->
return "views/login";
}
\t
@RequestMapping("/toWebMain")
public String toWebMain(){<!-- -->
return "web/main";
}
\t
@RequestMapping("/toViewsLoginOut")
public String toViewsLoginOut(HttpServletRequest request) {<!-- -->
request.getSession().invalidate();
return "views/login";
}
 @RequestMapping("/toLoginOutRetailer")
public String toViewsLoginOutRetailer(HttpServletRequest request) {<!-- -->
request.getSession().invalidate();
return "views/retailer_login";
}
\t
@RequestMapping("/toWebHome")
public String toWebHome(HttpServletRequest request) {<!-- -->
\t\t  
return "web/main1";
}
\t
@RequestMapping("/toWebLoginOut")
public String toWebLoginOut(HttpServletRequest request) {<!-- -->
request.getSession().invalidate();
return "web/login";
}
@RequestMapping("/toViewsInfo")
public String toViewsInfo(HttpServletRequest request) {<!-- -->
\t\t 
return "views/info";
}
@RequestMapping("/toViewsAddAdmin")
public String toViewsAddAdmin(HttpServletRequest request) {<!-- -->
return "views/add_admin";
}
\t
@RequestMapping("/toViewsAddUser")
public String toViewsAddUse() {<!-- -->
return "views/add_user";
}
\t
@RequestMapping("/toWebRegiste")
public ModelAndView toWebRegiste() {<!-- -->
return new ModelAndView("web/register");
}
\t
/*
* @RequestMapping("")
public String() {
return "views/addAdmin";
}*/
\t
@RequestMapping("toWebLogin")
public String toWebLogin() {<!-- -->
\t\t
 System.out.println("Arrived");
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");
}
\t\t
@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");
\t\t
}
\t\t
//Delete id based on primary key
@RequestMapping("/DeleteByAdminId")
@ResponseBody
public String deleteByPrimaryKey(@Param("id") int id) {<!-- -->
as.delete(id);
return "ok";
}
\t\t
@RequestMapping(value="/ToUpdateAdmin")
public String ToUpdateAdmin(HttpServletRequest request,int id) {<!-- -->
\t\t\t
Admin admin=as.findById(id);
request.setAttribute("admin", admin);
return "views/update_admin";
}
\t\t
@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);
 @RequestMapping("/toViewsLogin")
public String toViewsLogin(){<!-- -->
return "views/login";
}
\t
@RequestMapping("/toWebMain")
public String toWebMain(){<!-- -->
return "web/main";
}
\t
@RequestMapping("/toViewsLoginOut")
public String toViewsLoginOut(HttpServletRequest request) {<!-- -->
request.getSession().invalidate();
return "views/login";
}
@RequestMapping("/toLoginOutRetailer")
public String toViewsLoginOutRetailer(HttpServletRequest request) {<!-- -->
request.getSession().invalidate();
return "views/retailer_login";
}
\t
@RequestMapping("/toWebHome")
public String toWebHome(HttpServletRequest request) {<!-- -->
\t\t  
return "web/main1";
}
\t
@RequestMapping("/toWebLoginOut")
public String toWebLoginOut(HttpServletRequest request) {<!-- -->
request.getSession().invalidate();
return "web/login";
}
@RequestMapping("/toViewsInfo")
public String toViewsInfo(HttpServletRequest request) {<!-- -->
\t\t 
return "views/info";
}
@RequestMapping("/toViewsAddAdmin")
public String toViewsAddAdmin(HttpServletRequest request) {<!-- -->
return "views/add_admin";
}
\t
@RequestMapping("/toViewsAddUser")
 session.setAttribute("admin", admin);
session.setAttribute("adminname", admin.getNickname());
\t\t\t
return "views/index";
\t\t\t
}
\t 
@RequestMapping("/AdminLoginPage")
public String AdminLoginPage(HttpServletRequest request, HttpServletResponse response, HttpSession session
) throws UnknownHostException{<!-- -->
return "views/admin_login";
}
\t\t\t
//Query and paging
@RequestMapping("/AdminPage")
public ModelAndView AdminPage(
@RequestParam(defaultValue="1") Integer currentPage,Map<String,Object> map){<!-- -->
System.out.println("Arrived");
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");
}
\t\t
@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");
\t\t
}
\t\t
//Delete id based on primary key
@RequestMapping("/DeleteByAdminId")
@ResponseBody
 public String ToUpdateAdmin(HttpServletRequest request,int id) {<!-- -->
\t\t\t
Admin admin=as.findById(id);
request.setAttribute("admin", admin);
return "views/update_admin";
}
\t\t
@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");
\t\t
}
\t\t
\t\t
/*//Fuzzy query
@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";
}*/
\t
\t\t
\t\t
\t\t

}

 ts.insert(record);
return new ModelAndView("redirect: TeasPage");
}
\t 

@RequestMapping(value="/ToUpdateTeas")
public String ToUpdateTeas(HttpServletRequest request,int id) {<!-- -->
request.setAttribute("typeList", ts1.selectAll());
Teas record=ts.findById(id);
request.setAttribute("teas", record);
return "views/update_teas";
}
\t\t
\t  
@RequestMapping("/UpdateTeas")
public ModelAndView UpdateTeas(HttpServletRequest request,int id,MultipartFile tCover, MultipartFile img)throws Exception {<!-- -->
\t  \t\t
Teas record=new Teas();
record.setTeaName(request.getParameter("teaName"));
record. settCover(UploadUtil. fileUpload(tCover));
record.setImg(UploadUtil.fileUpload(img));
record.setPrice(Double.parseDouble(request.getParameter("price")));
record.setInfo(request.getParameter("info"));
record.setCount(Integer.parseInt(request.getParameter("count")));
record.settId(Integer.parseInt(request.getParameter("tId")));
ts.update(record, id);
return new ModelAndView("redirect: TeasPage");
\t\t
}
\t  \t
//Delete id based on primary key
@RequestMapping("/DeleteByTeasId")
@ResponseBody
public String deleteByTeasId(@Param("id") Integer id) {<!-- -->
ts.delete(id);
return "ok";
}

}

 Random rd = new Random();
\t\t  
//3, generate 4 random numbers
String n = "";
int rdGet; //get random number

do {<!-- -->
rdGet = Math.abs(rd.nextInt()) % 10 + 48; //Generate random numbers from 48 to 57 (key values from 0-9)
// rdGet=Math.abs(rd.nextInt())& + 97; //Generate random numbers from 97 to 122 (key values of a-z)
char num1 = (char) rdGet;
String dd = Character.toString(num1);
n + = dd;
} while (n.length() < 4); // If the length is less than 4
sb.append(n);
\t\t  
//4, return the unique code
return sb.toString();
}
\t
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;
}
\t
@RequestMapping("/PackPage")
public ModelAndView TeasPage(
@RequestParam(defaultValue="1") Integer currentPage,Map<String,Object> map){<!-- -->
System.out.println("arrived");
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");
}
\t 
@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();
@Controller
public class TeasController {<!-- -->
@Autowired
TeasDao teasDao;
@Autowired
TeasService ts;
\t
@Autowired
TypeService ts1;
/*
* Repeat code block, which is called when inserting and changing.
*/
@RequestMapping("/TeasPage")
public ModelAndView TeasPage(
@RequestParam(defaultValue="1") Integer currentPage,Map<String,Object> map){<!-- -->
System.out.println("arrived");
PageHelper.startPage(currentPage,8);
List<Teas> list=ts. selectAll();
PageInfo<Teas> pageInfo=new PageInfo<Teas>(list,8);
map. put("pageInfo", pageInfo);
return new ModelAndView("/views/list_teas");
}
\t 
\t 
@RequestMapping("/TeaWebPage")
public ModelAndView TeaWebPage(
@RequestParam(defaultValue="1") Integer currentPage,Map<String,Object> map){<!-- -->
System.out.println("Arrived");
PageHelper.startPage(currentPage,5);
List<Teas> list=ts.selectAll();
PageInfo<Teas> pageInfo=new PageInfo<Teas>(list,5);
map.put("pageInfo", pageInfo);
return new ModelAndView("/web/info");
}
\t 
@RequestMapping("/getTeas.do")
@ResponseBody
public List<Teas> getLesson(){<!-- -->
List<Teas> list=ts.selectAll();
return list;
}
\t 
\t 
\t 
 return "views/add_pack";
}
\t
\t
\t
\t
}

@Controller
public class RetailerController {<!-- -->
@Autowired
RetailerService re;
\t
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;
}
 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");
}
\t 
@RequestMapping("/DeletePack")
@ResponseBody
public String deletePack(@Param("packId") String packId) {<!-- -->
System.out.println("+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ");
System.out.print(packId);
System.out.print(" 666666666666666666666666666666666666666");
it.deleteByPackId(packId);
pa.delete(packId);
return "ok";
}
}

/*//Fuzzy query
@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";
}*/
\t
\t\t
\t\t
\t\t

}

\t 
@RequestMapping("/InsertType")
public ModelAndView InsertType(HttpServletRequest request)throws Exception {<!-- -->
Type record=new TypeController().getParameter(request);
ts.insert(record);
return new ModelAndView("redirect:TypePage");
}
\t  
@RequestMapping("/getTypes.do")
@ResponseBody
public List<Type> getLesson(){<!-- -->
List<Type> list=ts. selectAll();
return list;
}
\t  
\t 
\t  
@RequestMapping(value="/ToUpdateType")
public String ToUpdateType(HttpServletRequest request,int id) {<!-- -->
Type record=ts.findById(id);
request.setAttribute("type", record);
return "views/update_type";
}
\t\t
\t  
@RequestMapping("/UpdateType")
public ModelAndView UpdateType(HttpServletRequest request,int id)throws Exception {<!-- -->
\t  \t
Type record=new TypeController().getParameter(request);
ts.update(record, id);
return new ModelAndView("redirect:TypePage");
\t\t
}
\t  \t
//Delete id based on primary key
@RequestMapping("/DeleteByTypeId")
@ResponseBody
public String deleteByTypeId(@Param("id") Integer id) {<!-- -->
ts.delete(id);
return "ok";
}

}

@Controller
public class PackController {<!-- -->
@Autowired
PackService pa;
\t
@Autowired
ItemService it;
\t
public static String getRandomUUID() {<!-- -->
//1. Create timestamp
java.util.Date dateNow = new java.util.Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String dateNowStr = dateFormat. format(dateNow);
StringBuffer sb = new StringBuffer(dateNowStr);

//2. Create a random object
Random rd = new Random();
\t\t  
//3. Generate 4-digit random numbers
String n = "";
int rdGet; //Get random number

do {<!-- -->
rdGet = Math.abs(rd.nextInt()) % 10 + 48; //Generate random numbers from 48 to 57 (key values from 0-9)
// rdGet=Math.abs(rd.nextInt())& + 97; //Generate a random number from 97 to 122 (key value of a-z)
char num1 = (char) rdGet;
String dd = Character.toString(num1);
n + = dd;
} while (n.length() < 4);//If the length is less than 4
sb.append(n);
\t\t  
//4. Return unique code
return sb.toString();
}
\t
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")));
@Controller
public class AdminController {<!-- -->
@Autowired
AdminService as;
/*
* Repeat the code block to be called when inserting and changing.
*/
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;
}
\t
@RequestMapping("/AdminLogin")
public String AdminLogin(HttpServletRequest request,HttpServletResponse response,HttpSession session
) throws UnknownHostException{<!-- -->
\t\t
String uname=request.getParameter("uname");
String password=request.getParameter("pwd");
Admin admin = as.selectByUname(uname);
System.out.print("************************");
\t      
if(uname==null){<!-- -->
request.setAttribute("msg", "The administrator does not exist");
System.out.print("The administrator does not exist");
 request.setAttribute("typeList", ts.selectAll());
return "views/add_teas";
}
\t 
@RequestMapping("toViewsAddPack")
public String toViewsAddPack(HttpServletRequest request) {<!-- -->
request.setAttribute("teaList", tea.selectAll());
request.setAttribute("retailerList", re.selectAll());
return "views/add_pack";
}
\t
\t
\t
\t
}

@Controller
public class RetailerController {<!-- -->
@Autowired
RetailerService re;
\t
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;
}
\t
 return "ok";
}

}

@Controller
public class TypeController {<!-- -->
@Autowired
TypeService ts;
/*
* Repeat the code block to be called when inserting and changing.
*/
public Type getParameter(HttpServletRequest request) throws Exception{<!-- -->
Type record = new Type();
record.settName(request.getParameter("tName"));
\t\t

Please add a picture description

Please add a picture description
Please add a picture description
Please add picture description
Please add picture description
Please add picture description