我正在使用Spring REST和hibernate创建一个Web应用程序.这里我使用来自url的唯一用户名从数据库中获取记录.但问题是,如果我正在编写简单的字符串,那么它工作正常,但在用户名时我正在写点(.)然后没有结果来自数据库.
对于前者
http://localhost:8080/WhoToSubscribe/subscribe/anshul007
Run Code Online (Sandbox Code Playgroud)
但是当我使用这个网址时
http://localhost:8080/WhoToSubscribe/subscribe/nadeem.ahmad095
Run Code Online (Sandbox Code Playgroud)
它不起作用,因为它包含点(.)
这是我的控制器
@RequestMapping(value = "/{uname}", method = RequestMethod.GET)
public @ResponseBody
List<Profession> getSubscriber(@PathVariable("uname") String uname) {
List<Profession> pro = null;
try {
pro = subscribeService.getProfessionById(uname);
} catch (Exception e) {
e.printStackTrace();
}
return pro;
}
Run Code Online (Sandbox Code Playgroud)
这是我的DAO课程
@SuppressWarnings("unchecked")
public List<Profession> getProfessionById(String uname) throws Exception {
session = sessionFactory.openSession();
session.beginTransaction();
String queryString = "from Profession where username = :uname";
Query query = session.createQuery(queryString);
query.setString("uname", uname);
//List<Profession> queryResult = (List<Profession>) query.uniqueResult();
session.getTransaction().commit();
return query.list();
}
Run Code Online (Sandbox Code Playgroud)