搭建ssm框架遇到问题小结

1 篇文章 0 订阅

参考https://blog.csdn.net/gebitan505/article/details/44455235/ 搭建ssm框架遇到的问题小结:

1:Cannot load JDBC driver class 'com.mysql.jdbc.Driver '

jdbc未连接检查jdbc.properties 配置文件中路径后面是否有空格,去掉空格

2:Cannot find class: BaseResultMap

将mapping中对应的redultType改为resultMap

3:Invalid bound statement (not found) :确保mapper文件namespace和dao路径对应 

检查在spring-mybatis文件中是否配置mapper.xml自动扫描信息:

 <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">  
        <property name="dataSource" ref="dataSource" />  
        <!-- 自动扫描mapping.xml文件 -->  
        <property name="mapperLocations" value="classpath:com/wl/mapping/*.xml"></property>  

    </bean>

也可以在pom文件中添加resource编译,因为mapper文件不是放在resource中,maven编译的时候没有把xml文件编译进来。 

 <build>
    <finalName>ssmTest</finalName>
    <resources>
    <resource>
        <!--此处配置到java是因为mapper.xml文件在java目录-->
        <directory>src/main/java</directory>
        <includes>
            <include>**/*</include>
        </includes>
        <filtering>false</filtering>
    </resource>
</resources>

  </build>

4:ssm中注解应用理解:

@Repository用于标注数据访问组件,即DAO

@Service用于标注业务层

@Controller用于标注控制层组件

@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注,把pojo实例化到spring容器中

@Autowired后不需要getter()和setter()方法,Spring也会自动注入

@Resource注解标记可以用在字段定义或setter方法定义前面,默认首先按名称匹配注入,然后类型匹配注入

@Autowired注解标记也可以用在字段定义或setter方法定义前面,默认按类型匹配注入

@RequestMapping可以用在controller类定义和方法定义上 

@Controller
@RequestMapping("/user")
public class UserController {
@Resource
private IUserService userService;
@RequestMapping("/showUser")
public String showUser(HttpServletRequest request, Model model) {
int userId = Integer.parseInt(request.getParameter("id"));
User user = this.userService.getUserById(userId);
model.addAttribute("user", user);
return "showUser";

}

@RequestMapping("/user") @RequestMapping("/showUser") 连接浏览器中url地址 请求路径

return "showUser"; 返回对应的页面路径名称 

getBean的默认名称是类名(首字母小写),如果想自定义,可以@Service(“userService”)这样来指定。
这种bean默认是“singleton”的,如果想改变,可以使用@Scope(“prototype”)来改变。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值