基于JavaConfig的springMVC+Mybatis整合

第一次写文章,只是想记录一下自己在Spring学习路上的各种坑。--- 本人研究生一年级,就是在2016年暑假才开始学习Java,难怪第一志愿没有被录取,23333 


工具:jetBrain全家桶之IntelliJ IDEA

Spring 4.x + mybatis 3.x + mysql 5.6 由于对版本管理的熟悉度较低,故未使用(抓紧研究中)最近在参加JDATA比赛,有兴趣的大家也可以看一看 ===> JDATA


第一步:导入相应的各种jar包们 各个包的组合,下次文档写一写


基于JavaConfig的springMVC+Mybatis整合_第1张图片

第二步:向我们的数据库导入需要的数据们

CREATE TABLE `a`.`User`(    `id` INT(11) AUTO_INCREMENT UNIQUE ,    `name` VARCHAR(32)  );

INSERT INTO `a`.`user`(`id`,`name`) VALUES ( '1','麻婆豆腐');

INSERT INTO `a`.`user`(`id`,`name`) VALUES ( '2','水煮约');

INSERT INTO `a`.`user`(`id`,`name`) VALUES ( '3',“辣子鸡丁”);

第三步:创建我们的应用

项目结构如下:

基于JavaConfig的springMVC+Mybatis整合_第2张图片

WebInit.java

public classWebInitextendsAbstractAnnotationConfigDispatcherServletInitializer {

        @Override

        protectedClass[] getRootConfigClasses() {

                return newClass[]{RootConfig.class};

        }

        @Override

        protectedClass[] getServletConfigClasses() {

                return newClass[]{WebConfig.class};

        }

        @Override

        protectedString[] getServletMappings() {

                return newString[]{"/"};

        }

}


WebConfig.java

@Configuration

@EnableWebMvc

@ComponentScan(basePackages = {"mapodoufu.web"})

public classWebConfig {

        @Bean

        publicInternalResourceViewResolver resourceViewResolver(){

                InternalResourceViewResolver resourceViewResolver =newInternalResourceViewResolver();

                resourceViewResolver.setSuffix(".jsp");

                resourceViewResolver.setPrefix("/WEB-INF/jsp/");

                returnresourceViewResolver;

        }

}

@Configuration

@MapperScan(basePackages = {"mapodoufu.web.mapper"})

public classRootConfig {

        @Bean

         publicDriverManagerDataSource dataSource(){

                 DriverManagerDataSource dataSource =newDriverManagerDataSource();

                 dataSource.setDriverClassName("com.mysql.jdbc.Driver");

                 //防止乱码

                 dataSource.setUrl("jdbc:mysql://localhost:3306/a?useUnicode=true&characterEncoding=utf-8");

                 dataSource.setUsername("root");

                 dataSource.setPassword("");

                 returndataSource;

}

        @Bean

         publicDataSourceTransactionManager transactionManager(){

                 return newDataSourceTransactionManager(dataSource());

}

        @Bean

        publicSqlSessionFactoryBean sqlSessionFactory(){

                SqlSessionFactoryBean sessionFactory =newSqlSessionFactoryBean();

                 sessionFactory.setDataSource(dataSource());

                 // 配置类型别名

                sessionFactory.setTypeAliasesPackage("mapodoufu.web.enity");

                returnsessionFactory;

        }

}


UserMapper.java

@Repository

public interfaceUserMapper {

        @Select("SELECT * FROM user")

         List getUserList() ;

}


UserServiceImpl.java

@Service

public classUserServiceImplimplementsUserService {

        @Autowired

        UserMapperuserMapper;

        @Override

        publicList getUserList() {

        List userList =userMapper.getUserList();

        returnuserList;

        }

}


结果截图

基于JavaConfig的springMVC+Mybatis整合_第3张图片

剩下的代码就是正常的SpringMVC的基本流程这里 github地址:zip压缩吧


一张spring的结构图:


基于JavaConfig的springMVC+Mybatis整合_第4张图片

你可能感兴趣的:(基于JavaConfig的springMVC+Mybatis整合)