zoukankan      html  css  js  c++  java
  • SSM整合

    SSM整合其实不难,不同的人会有不同的项目结构

    这里我的项目结构是这样:

    ── com
       └── james
       ├── controller
       │   └── UserHandler.class
       ├── entity
       │   └── User.class
       ├── repository
       │   ├── UserRepository.class
       │   └── UserRepository.xml
       └── service
       ├── Impl
       │   └── UserServiceImpl.class
       └── UserService.class

    第一次实际操作整合,还是会出一点小问题

    如果自动扫描直接写的是根目录com.james的话其实mapper里就直接可以写类名就ok,因为已经注入到IoC中

    比如我们的Mapper里的resultType写User就好

    其次的是Dao->Service->Controller逐层都是要调用的,每一层都要加@Autowired

    Service中的UserRepository要加

    Controller中的UserService要加

    代表自动装载Bean

    这里我还是没有直觉,既然已经学习过了NestJs,其实应该对于这个@Autowired注解很敏感才对

    NestJs也是逐层调用,Module中管理注入配置,当然我们不能图省事不写service层而直接在controller中select、update等等

    我在一开始粗心在service层忘记加了那么就会出现空指针异常,controller去调service层,结果发现没有对应方法

    其次就是有关于事务的注解tx这里还没有加入,所以会console出事务不被spring管理的信息

    最后就是c3p0的警告,我一开始使用的是0.9.1.2版本,爆出异常

    java.lang.AbstractMethodError: Method com/mchange/v2/c3p0/impl/NewProxyPreparedStatement.isClosed()Z is abstract

    这里更新c3p0到0.9.5.2即可,注意groupId变为com.mchange了

    我的controller里还是返回的ModelAndView类型,之后和Vue对接的时候会换成Vue接受的数据类型。

    目前还未更新

  • 相关阅读:
    JSP引擎的工作原理
    Hibernate缓存配置
    理解LinkedHashMap
    如何在CMD下运用管理员权限
    sun.misc.BASE64Encoder找不到jar包的解决方法
    访问WEB-INF目录中的JSP文件
    Servlet Filter(过滤器)、Filter是如何实现拦截的、Filter开发入门
    message from server: "Host 'xxx' is not allowed to connect to this MySQL server的解决
    深入Java单例模式
    (八)路径(面包屑导航)分页标签和徽章组件
  • 原文地址:https://www.cnblogs.com/exigeslover/p/12608806.html
Copyright © 2011-2022 走看看