美文网首页
连接数据库

连接数据库

作者: itachi | 来源:发表于2018-11-11 22:00 被阅读5次
dao层的写法

1,创建interface注解,该注解可用在类或者方法上。

public @interface MyBatisDao {
}

2,编写daointerface

public interface AdminDao {
    public Admin findByCode(String adminCode);
}

3,写实现例

package org.ks.dao;

import org.ks.entity.Admin;
import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.stereotype.Repository;

import javax.annotation.Resource;


/*SqlSessionTemplate,用法和sqlsessionn一致
有mybatis-spring.jar提供*/

@Repository("dao1")
public class MyBatisAdminDao implements AdminDao {

    @Resource
    private SqlSessionTemplate template;

    public SqlSessionTemplate getTemplate() {
        return template;
    }

    public void setTemplate(SqlSessionTemplate template) {
        this.template = template;
    }

    @Override
    public Admin findByCode(String adminCode) {
        Admin admin=template.selectOne("findByCode",adminCode);
        return admin;
    }
}

sqlsessiontemplate简介
http://www.mybatis.org/spring/zh/sqlsession.html

4,编写mapple

<mapper namespace="org.ks.dao.AdminDao">
    <select id="findByCode" resultType="org.ks.entity.Admin" parameterType="string">
        SELECT * FROM admin WHERE admin_code=#{code}
    </select>
</mapper>

id需要与方法名相同
resulttype表示查询到返回的类型,需要全路径。
parametertype表示动态参数的类型。

5,编写实体类

6,配置文件

//读取配置文件
<util:properties id="jdbc" location="classpath:db.properties"></util:properties>
//将配置文件的数据设置到datasource里
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" >
        <property name="driverClassName" value="#{jdbc.driverName}"></property>
        <property name="url" value="#{jdbc.url}"></property>
        <property name="username" value="#{jdbc.userName}"></property>
        <property name="password" value="#{jdbc.password}"></property>
    </bean>

    <!--定义 SQLSessionFactoryBean 将Mybatis中的主配置文件中的重要参数引入spring配置文件中-->
    <bean id="ssf" class="org.mybatis.spring.SqlSessionFactoryBean">
        <!--注入数据源(链接 信息)-->
        <property name="dataSource" ref="dataSource"/>
        <!--注入sql映射定义文件,若是多个mapper文件可以用*代替-->
        <property name="mapperLocations" value="classpath:org/ks/sql/*.xml"/>
    </bean>

    <!--按指定包扫描接口,批量生成接口的实例,采用接口名首字母小写作为接口实例的ID-->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="org.ks.dao"></property>
        <!--此属性可以不用指定,spring会自动注入-->
//接口注释
        <!--org.ks.dao包下有可能有些接口是通过Mapper实现的,也有可能是自己实现的
        且不符合Mapper规范,那么就不能把org.ks.dao下的所有接口都自动实例化
        当出现不需要实例化的接口时,可以通过增加注解来指定哪些接口需要自动
        生成实例-->
        <property name="annotationClass" value="org.ks.util.MyBatisDao"></property>
        <property name="sqlSessionFactory" ref="ssf"></property>
    </bean>


    <context:component-scan base-package="org.ks"/>
    <!--配置HandleMapping-->
    <mvc:annotation-driven/>

//
    <bean id="viewResolver"
          class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/"/>
        <property name="suffix" value=".jsp"/>
    </bean>

    <!--配置sqlsessionTemplate-->
    <bean id="sqSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
        <constructor-arg index="0" ref="ssf"/>
    </bean>

相关文章

  • SpringBoot配置MySQL多数据源

    1、先配置数据库连接文件 在连接文件中,设置多个数据库连接 2、AAA数据库连接配置文件 3、BBB数据库连接配置...

  • servlet连接mysql数据库和oracle数据库

    连接mysql数据库 连接oracle数据库

  • PHP 连接MySQL

    如果想连接MySQL数据库 需要连接数据库的host 要连接的数据库名 用户名 密码 //PHP数据库连接配...

  • mysql基本操作

    连接本地mysql数据库 连接远程数据库:

  • Ubuntu操作mysql数据库命令

    一、连接数据库 连接本地数据库 退出数据库 二、操作数据库 创建数据库 显示数据库 删除数据库 连接数据库 查看状...

  • JDBC

    建立数据库连接 简化连接不同数据库,将连接数据库信息存储到文件中 通过获取驱动连接数据库,可同时获得多个驱动 执行...

  • 数据库连接池

    数据库连接池介绍 在没有连接池,需要程序直接向数据库获取连接,频繁对数据库进行连接会使数据库宕机,进程直接被结束;...

  • MySQL分库分表篇

    1 传统项目结构 2 数据库性能瓶颈 ① 数据库连接数据库连接是非常稀少的资源,MySQL数据库默认100个连接,...

  • 关于IDEA连接MySQL数据库失败的解决方法(报错08001)

    在IDEA自带的数据库连接工具中,可以连接MySQL数据库,但是有的时候连接出现08001错误,连接不上数据库。1...

  • java基础-day36-数据库连接池和HTML

    数据库连接池和HTML 1. 数据库连接池 1.1 为什么要使用数据库连接池 1.2 数据库连接池考虑的问题 1....

网友评论

      本文标题:连接数据库

      本文链接:https://www.haomeiwen.com/subject/kvyffqtx.html