问题:慕课SSM项目

项目结构分析

项目出现的问题or注意的地方

1、 @repository用在注解上

我在做慕课实战项目的时候,有看到他在dao层写注解,他说把Bean放在spring容器中,是为了能在业务层进行自动注入依赖,实际上我在其他视频中看到可以不需要因为当你在配置mybatis配置中配置了session工厂对象,它会帮我代理实现这个接口,你可以在业务层直接自动注入了。

感觉这样是不是多此一举啊?

当你在配置spring核心配置中配置了session工厂对象,它会帮我代理实现这个接口,已经在spring容器里面了,你可以在业务层直接自动注入了。

@Repository("departmentDao")
public interface DepartmentDao {

2、视图解析器

<!--session工厂-->
    <bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sessionFactory">
        <property name="dataSource" ref="dataSource"/>
        <property name="typeAliasesPackage" value="com.imooc.oa.entity"/>   <!--配置实体类的别名-->
    </bean>
    <!--配置映射接口:扫包-->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="sqlSessionFactoryBeanName" value="sessionFactory"/><!--注意这个啦-->
        <property name="basePackage" value="com.imooc.oa.dao"/>
    </bean>

不明白此处的作用:

<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>

解答:
可能是为了加载jstlView标签库(jstl的jar包),去掉也没事。

3、spring配置session工厂类

 <!--session工厂-->
    <bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sessionFactory">
        <property name="dataSource" ref="dataSource"/>
        <property name="typeAliasesPackage" value="com.imooc.oa.entity"/>   <!--配置实体类的别名-->
    </bean>

这里主要是强调可以将配置session工厂,还可以通过扫包的方式同时配置实体类的别名
了解一下,更多取别名方式


其次是这个语句不明白:

<property name="sqlSessionFactoryBeanName" value="sessionFactory"/><!--注意这个啦-->

解答:
1

4、配置数据库

mysql 连接url中useUnicode=true&characterEncoding=UTF-8 的作用
jdbc.perperties:

jdbc.url = jdbc:mysql://localhost:3306/oa?useUnicode=true&amp;characterEncoding=utf-8"

查看

5、关于Contoller方法传参数Map来存储数据

    @RequestMapping("list")
    public String list(Map<String,Object> map){
        map.put("departmentList",departmentBiz.getAll());
        return "department_list";
    }

原来springmvc在调用controller的方法时,会隐含创建模型对象作为模型数据的存储的容器。
其中就包括Map、Model、ModelAndView(也有request、response、session)

这里使用Map,说是,Map是通用的,及时不使用SpringMVC框架也可以使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值