我正在用hibernate创建一个spring boot应用程序。但我无法访问其他包中的功能。 这是由于不同的包裹吗?。
我的ManageController:
@Controller
public class ManageController {
private ManageService manageService;
@Autowired(required=true)
//@Qualifier(value="manageService")
public void setmanageService(ManageService ms){
this.manageService = ms;
}
@RequestMapping(value = "USER_LOGIN")
public void user_login(Model model, HttpServletResponse response, HttpServletRequest request) throws JSONException, IOException {
try {
StringBuilder username = new StringBuilder((String)request.getParameter("username"));
StringBuilder password = new StringBuilder((String)request.getParameter("password"));
List<JSONObject> json = new ArrayList<JSONObject>();
System.out.println("1");
System.out.println("username :"+username);
System.out.println("password :"+password);
Users users = this.manageService.getUsersByUsername (username.toString());
System.out.println("2");
if(users.getId() > 0) {
JSONObject json_data = new JSONObject();
if(users.getPassword().equals(password.toString())) {
json_data.put("status","true");
json_data.put("login","Success");
}else {
json_data.put("status","false");
json_data.put("login","Incorrect password");
}
json.add(json_data);
}
response.getWriter().print("{\"result\":"+json+"}");
} catch (Exception e){
List<JSONObject> json1 = new ArrayList<JSONObject>();
JSONObject json_data1 = new JSONObject();
json_data1.put("status","false");
json_data1.put("login","Incorrect username");
json1.add(json_data1);
response.getWriter().print("{\"result\":"+json1+"}");
}
}
}
此处无法访问该行:
Users users = this.manageService.getUsersByUsername (username.toString());
我的项目结构是:
在我的manageDao实现中,我正在调用无法访问的函数;
@Repository
public class ManageDaoImpl implements ManageDao {
private static final Logger logger = LoggerFactory.getLogger(ManageDaoImpl.class);
private SessionFactory sessionFactory;
public void setSessionFactory(SessionFactory sf){
this.sessionFactory = sf;
}
@Override
public Users getUsersByUsername (String username) {
System.out.println("11");
System.out.println("11 username:"+username);
Session session = this.sessionFactory.getCurrentSession();
System.out.println("12");
Criteria cr = session.createCriteria(Users.class);
System.out.println("13");
cr.add(Restrictions.eq("username", username));
System.out.println("14");
cr.add(Restrictions.eq("active", 1));
System.out.println("15");
Users ul = (Users) cr.uniqueResult();
System.out.println("16");
return ul;
}
}
最后主要的课程是:
@SpringBootApplication
@EnableAutoConfiguration
//@ComponentScan(basePackages = { "com.paymark"})
@ComponentScan(basePackages = { "com.paymark.app","com.paymark.views","com.paymark.app.dao","com.paymark.app.model","com.paymark.app.service"})
public class PaymarkApplication {
public static void main(String[] args) {
SpringApplication.run(PaymarkApplication.class, args);
}
}
是否与配置问题有关?无法访问任何功能?最初,错误与bean有关。 像:
考虑定义类型的bean 您的配置中的“com.paymark.app.service.ManageService”。
所以我删除了:
@Qualifier(值= “manageService”) 来自管理服务。但现在错误仍然没有,任何功能都无法访问..
更新: 在ManageService中:
public interface ManageService {
public Users getUsersByUsername (String username);
}
在ManageServiceImplementation中:
@Service
public class ManageServiceImpl implements ManageService {
private ManageDao manageDAO;
@Override
@Transactional
public Users getUsersByUsername (String username) {
return this.manageDAO.getUsersByUsername(username);
}
}
CONSOLE:
2018-01-05 14:57:48.357 INFO 7649 --- [ restartedMain] com.paymark.app.PaymarkApplication : Starting PaymarkApplication on Karthiks-MacBook-Air.local with PID 7649 (/Applications/MAMP/htdocs/paymark/target/classes started by karthikcp in /Applications/MAMP/htdocs/paymark)
2018-01-05 14:57:48.358 INFO 7649 --- [ restartedMain] com.paymark.app.PaymarkApplication : No active profile set, falling back to default profiles: default
2018-01-05 14:57:48.457 INFO 7649 --- [ restartedMain] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@7e86f0ec: startup date [Fri Jan 05 14:57:48 IST 2018]; root of context hierarchy
2018-01-05 14:57:50.700 INFO 7649 --- [ restartedMain] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2018-01-05 14:57:50.714 INFO 7649 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2018-01-05 14:57:50.718 INFO 7649 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.23
2018-01-05 14:57:51.129 INFO 7649 --- [ost-startStop-1] org.apache.jasper.servlet.TldScanner : At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
2018-01-05 14:57:51.135 INFO 7649 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2018-01-05 14:57:51.136 INFO 7649 --- [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 2684 ms
2018-01-05 14:57:51.339 INFO 7649 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]
2018-01-05 14:57:51.343 INFO 7649 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2018-01-05 14:57:51.343 INFO 7649 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2018-01-05 14:57:51.344 INFO 7649 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2018-01-05 14:57:51.344 INFO 7649 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
2018-01-05 14:57:52.130 INFO 7649 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Building JPA container EntityManagerFactory for persistence unit 'default'
2018-01-05 14:57:52.143 INFO 7649 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [
name: default
...]
2018-01-05 14:57:52.220 INFO 7649 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate Core {5.0.12.Final}
2018-01-05 14:57:52.222 INFO 7649 --- [ restartedMain] org.hibernate.cfg.Environment : HHH000206: hibernate.properties not found
2018-01-05 14:57:52.223 INFO 7649 --- [ restartedMain] org.hibernate.cfg.Environment : HHH000021: Bytecode provider name : javassist
2018-01-05 14:57:52.285 INFO 7649 --- [ restartedMain] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.0.1.Final}
2018-01-05 14:57:52.421 INFO 7649 --- [ restartedMain] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.MySQL5Dialect
2018-01-05 14:57:53.076 INFO 7649 --- [ restartedMain] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000227: Running hbm2ddl schema export
2018-01-05 14:57:53.489 INFO 7649 --- [ restartedMain] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000230: Schema export complete
2018-01-05 14:57:53.517 INFO 7649 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2018-01-05 14:57:53.965 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@7e86f0ec: startup date [Fri Jan 05 14:57:48 IST 2018]; root of context hierarchy
2018-01-05 14:57:54.051 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/USER_LOGIN]}" onto public void com.paymark.app.ManageController.user_login(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.052 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/DEVICE_VERIFICATION]}" onto public void com.paymark.app.ManageController.device_verification(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.052 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/PIN_VERIFICATION]}" onto public void com.paymark.app.ManageController.pin_verification(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.052 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/TRANSACTIONS]}" onto public void com.paymark.app.ManageController.transactions(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.052 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/COLLECTIONS]}" onto public void com.paymark.app.ManageController.collections(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.053 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/TRANSACTIONS_REPRINT]}" onto public void com.paymark.app.ManageController.transactions_reprint(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.053 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/USER_REGSITRATION]}" onto public void com.paymark.app.ManageController.user_regsitration(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.053 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/USER_REGSITRATION_EDIT]}" onto public void com.paymark.app.ManageController.user_regsitration_edit(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.053 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/USER_REGSITRATION_REMOVE]}" onto public void com.paymark.app.ManageController.user_regsitration_remove(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.053 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/USER_LOGIN_WEB]}" onto public void com.paymark.app.ManageController.user_login_web(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.054 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/CLIENT_REGSITRATION]}" onto public void com.paymark.app.ManageController.client_regsitration(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.054 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/CLIENT_REGSITRATION_EDIT]}" onto public void com.paymark.app.ManageController.client_regsitration_edit(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.054 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/CLIENT_REGSITRATION_REMOVE]}" onto public void com.paymark.app.ManageController.client_regsitration_remove(org.springframework.ui.Model,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest) throws org.json.JSONException,java.io.IOException
2018-01-05 14:57:54.055 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public java.lang.String com.paymark.views.ErrorHandler.error()
2018-01-05 14:57:54.055 INFO 7649 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/],methods=[GET]}" onto public java.lang.String com.paymark.views.HomeController.index()
2018-01-05 14:57:54.102 INFO 7649 --- [ restartedMain] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-01-05 14:57:54.102 INFO 7649 --- [ restartedMain] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/resources/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-01-05 14:57:54.195 INFO 7649 --- [ restartedMain] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-01-05 14:57:54.640 INFO 7649 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
2018-01-05 14:57:54.889 INFO 7649 --- [ restartedMain] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2018-01-05 14:57:54.991 INFO 7649 --- [ restartedMain] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2018-01-05 14:57:55.003 INFO 7649 --- [ restartedMain] com.paymark.app.PaymarkApplication : Started PaymarkApplication in 7.068 seconds (JVM running for 8.952)
2018-01-05 14:58:05.672 INFO 7649 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring FrameworkServlet 'dispatcherServlet'
2018-01-05 14:58:05.672 INFO 7649 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization started
2018-01-05 14:58:05.691 INFO 7649 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization completed in 19 ms
1
username :admin
password :123456
答案 0 :(得分:0)
ManageDaoImpl 类中的 getUsersByUsername 函数,而不是 ManageService