发表于: 2017-08-30 21:55:46

1 972


一、今日完成

1.学习泛型概念,了解如何定义定义泛型方法和泛型类

1)定义一个泛型方法,该方法在调用时可以接收不同类型的参数

public class GenericMethodTest                  

   public static < E > void printArray( E[] inputArray )    {     

         for ( E element : inputArray ){        

            System.out.printf( "%s ", element );

         }

         System.out.println();

    }

    public static void main( String args[] )

    {      

        Integer[] intArray = { 1, 2, 3, 4, 5 };

        Double[] doubleArray = { 1.1, 2.2, 3.3, 4.4 };

        Character[] charArray = { 'H', 'E', 'L', 'L', 'O' };

 

        System.out.println( "整型数组元素为:" );

        printArray( intArray  ); 


        System.out.println( "\n双精度型数组元素为:" );

        printArray( doubleArray ); 

 

        System.out.println( "\n字符型数组元素为:" );

        printArray( charArray ); 

    } 

}

2)定义一个泛型类

public class Box<T> {   

  private T t;

  public void add(T t) {

    this.t = t;

  }

  public T get() {

    return t;

  }

  public static void main(String[] args) {

    Box<Integer> integerBox = new Box<Integer>();

    Box<String> stringBox = new Box<String>();

 

    integerBox.add(new Integer(10));

    stringBox.add(new String("好好学习"));

    System.out.printf("整型值为 :%d\n\n", integerBox.get());

    System.out.printf("字符串为 :%s\n", stringBox.get());

  }

}

2.复习传统JDBC方法,把工具书上讲解的各种接口与概念重新浏览一遍,发现做任务1过程中总结的一些经验有所遗忘。计划在本周剩下的时间里,抽空把传统JDBC、Spring JDBC和mybatis连接数据库的方法分别编写代码实现出来,集中对比总结它们各自的主要特点。

3.程凯师兄整理出了Java学员任务进度和学时安排模板,在经过各位师兄的补充和修补后,晚上时候把任务1和任务2添加进禅道个人项目中。然后浏览分析了任务2~9的总学时计划,目前看来,在10月底能够完成全部任务。另外,以后每日的进度严格按照禅道拆解的时长控制,在日报中贴出进度链接。

4.学习SqlSessionFactory和SqlSession对象

1)SqlSessionFactory类的实例(相当于是产生连接池),通过调用SqlSessionFactoryBuilder类的实例的build方法来完成;而SqlSessionFactoryBuilder可以从XML文件或者预定义的Configuration实例构建。

i.读取XML文件

String resource = "org/mybatis/example/mybatis-config.xml";

  InputStream inputStream = Resources.getResourceAsStream(resource);

  SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream) ;

ii.通过预定义实例构建

DataSource dataSource = BlogDataSourceFactory.getBlogDataSource();

TransactionFactory transactionFactory = new JdbcTransactionFactory();

Environment environment = new Environment("development", transactionFactory, dataSource);

Configuration configuration = new Configuration(environment);

configuration.addMapper(BlogMapper.class);

SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration) ;

2)SqlSession对象

SlSession是执行持久化操作的对象,类似于JDBC中的Connection。包含方法有

int insert (String statement, Object parameter)、int update(String statement, Object parameter)、int delete (String statement, Object parameter)、<T> T selectOne(String statement, Object parameter)、<E> List<E>selectList(String statement, Object parameter, RowBounds rowBounds)、void close()、Connection getConnection()等。

5.学习mybatis的关联映射和动态SQL用法,仅浏览相关概念和用法,没有代码实战,所以总结下来发现并没有积累什么知识点,这些放到以后遇到相关代码时候再去深入学习。


二、明日计划

1.把之前完成的REST接口放到jetty中运行,学习jetty命令的用法;;

2.下载Postman/dhc,测试写的接口。


三、遇到的问题

今天主要完成的就是看书学习Java基本概念、mybatis配置文件的详细用法以及mybatis的关联映射等知识点,在日报里缺少总结出的具体的代码和讲解说明。


四、收获

对mabatis了解地更加深入;学习泛型的基本用法,对比集合类,大致分清二者的用法区别。



返回列表 返回列表
评论

    分享到