gpt4 book ai didi

java - Spring Boot 应用程序中日志记录概念的行数

转载 作者:行者123 更新时间:2023-11-29 04:11:12 25 4
gpt4 key购买 nike

我正在尝试使用 spring boot 应用程序创建一个登录概念,所以我只需要一个 mysql 表的行数,我尝试了各种互联网答案但没有找到解决方案,请您提供帮助和建议。我会在下面提到我的代码。

Controller

@GetMapping("/Login")
public String Login(Model model) {
model.addAttribute("customer", new Customer());
return "login";
}

@PostMapping("/LoginProcess")
public String LoginProcess(@ModelAttribute("customer") Customer thecustomer,HttpSession session) {

System.out.println(thecustomer);
Customer result = customerservice.Login_service(thecustomer.getUserName(),thecustomer.getPassword());

if(result==null)
{
return "login";
}
else if(result.getRole().equals("1"))
{

return "admindash";
}
else
{
//session.setAttribute("jsp_uname", result.getUserName());
return "customerdash";
}
}

CustomerImplDao

import javax.persistence.EntityManager;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.criterion.Restrictions;
import org.hibernate.query.Query;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import com.example.filedemo.model.Customer;

@Repository
public class CustomerDaoImpl implements Customerdao {
@Autowired
private EntityManager entityManager;

@Override
public void save(Customer theCustomer) {
Session cursession = entityManager.unwrap(Session.class);
//If Id=0 then It will do insert or id=x then it will do update
cursession.save(theCustomer);

}

@Override
public Customer Login(String username,String password) {
Session cursession = entityManager.unwrap(Session.class);
String hql="from Customer c where c.UserName=:username and c.password=:password";
Query<Customer> query = cursession.createQuery(hql,Customer.class);
query.setParameter("username", username);
query.setParameter("password", password);
Customer theCustomer = query.uniqueResult();
System.out.println("******************"+query.getResultList().size());
return theCustomer;
}
}

最佳答案

您可以简单地使用:

query.getResultList().size();

或者在数据库siede上:

entityManager.creteQuery("select count(c) from Customer c where c.UserName=:username and c.password=:password", Long.class).getSingleResult();

为此,您需要将它注入(inject)到您的服务(bean)之上:

@Autowired
private EntityManager entityManager;

关于java - Spring Boot 应用程序中日志记录概念的行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54962265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com