毕设(五.完成第一步,登陆问题)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zy1104560031/article/details/79298132

终于想出了用来解决问题的方法,先用账号查数据库,再用密码查数据库,看看两个相等不?

不过有缺陷就是数据库中不能有密码相同的两个人,如果用id差应该就好了,不过不想改了,成就感还是有的

接着做员工的增删该查,不过要先布局

LoginController:

package itzy.controller;


import com.jfinal.aop.Before;
//import com.jfinal.aop.Before;
import com.jfinal.core.Controller;


import itzy.model.employee;
import itzy.service.EmployeeService;
//import itzy.validator.LoginValidator;
import itzy.validator.LoginValidator;


public class LoginController extends Controller{
public void index(){
//render("run ...");
render("login.html");
System.out.println("run1...");
}
private EmployeeService getEmployeeService(){
System.out.println("gep,run...");
return new EmployeeService();
}

@Before(LoginValidator.class)
//Before注解用来对拦截器进行配置, 配置一个Class级别的拦截器,她将拦截本类中的所有方法
public void Login(){
//获取表单数据
System.out.println("run2...");
employee username = getModel(employee.class,"employee");
System.out.println("Controller username:"+username);

String userName = getPara("user");
String passWord = getPara("password");

System.out.println("logincontroller username,password:"+userName+passWord);

boolean message = getEmployeeService().checkLogin(userName,passWord);
System.out.println("message:"+message);
/*
* 验证成功:
* 1、session内user存储用户名;2、转发至success.jsp
* 验证失败:
* 1、request内message存储验证信息;2、转发至/login.jsp
*/
if(message == true){
System.out.println("check run...");
setSessionAttr("user", username.getStr("user"));
//System.out.println("success");
renderJsp("/success.jsp");
}else{
setAttr("message", message);
render("/login.html");
return;
}
}


}

LoginService:

package itzy.service;


import java.util.List;


import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Record;


import itzy.model.employee;


public class EmployeeService {
public static final employee dao = new employee().dao();
public boolean checkLogin(String userName,String passWord) {
// TODO Auto-generated method stub
System.out.println("check running...");

//employee Emp = new employee();


//List<Record> temp = Db.find("select employee_password from employee where employee_username = 'userName'");
//employee temp = employee.dao.findByIdLoadColumns(userName, "employee_password");
employee temp1 = employee.dao.findFirst("select * from employee where employee_username='"+userName+"'");
employee temp2 = employee.dao.findFirst("select * from employee where employee_password='"+passWord+"'");


//employee temp = employee.dao.findByIdLoadColumns(userName, "employee_password");
//String temp1 =temp.toJson();
System.out.println("temp:"+","+temp1+","+temp2);
//employee temp3 = {employee_password:'+passWord+'};
if(temp1 == null||!temp1.equals(temp2)||temp2==null){
System.out.println("username:"+userName);
System.out.println("账号不存在或者密码错误");
//render
return false;
}else{
//System.out.println();
System.out.println("登陆成功");
return true;
}
/*String username = emp.getStr("user");
System.out.println("LoginService username:"+username);
String password = emp.getStr("password");
System.out.println("password:"+password);
System.out.println("model runing...");

String sql = employee.emp.getSql("select * from employee where employee_username = ?");
employee temp = employee.emp.findFirst(sql,username);
System.out.println("错了?");

if(temp == null||!temp.getStr(password).equals(password)){
return "账号或者密码错误";
}*/
//return null;
}


}


在HTML5中的一个超链接,应该转到另一个HTML5文件,结果却调用了index方法
改了路径还是不对
JFinal报错:
[ERROR]-[Thread: qtp292938459-23]-[com.jfinal.core.ActionHandler.handle()]: /empmanager
com.jfinal.render.RenderException: java.lang.RuntimeException: File not found : G:\eclipse-jee-mars-1-win32-x86_64\JF_For_Mvn_bishe\src\main\webapp/empmanager/empmanager.html
at com.jfinal.render.TemplateRender.render(TemplateRender.java:62)
at com.jfinal.core.ActionHandler.handle(ActionHandler.java:108)
at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:73)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
at org.eclipse.jetty.server.Server.handle(Server.java:365)
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:926)
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:988)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:635)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.RuntimeException: File not found : G:\eclipse-jee-mars-1-win32-x86_64\JF_For_Mvn_bishe\src\main\webapp/empmanager/empmanager.html
at com.jfinal.template.source.FileSource.getContent(FileSource.java:70)
at com.jfinal.template.Engine.buildTemplateBySourceFactory(Engine.java:153)
at com.jfinal.template.Engine.getTemplate(Engine.java:138)
at com.jfinal.render.TemplateRender.render(TemplateRender.java:60)
... 25 more


弄了半天没弄懂,最后暴力解决:
把文件夹的名字改了。mmp,得去看看路由源码,理解理解

猜你喜欢

转载自blog.csdn.net/zy1104560031/article/details/79298132