3.尚硅谷_MyBatis_HelloWorld.avi

CREATE TABLE `tbl_employee` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `last_name` varchar(255) DEFAULT NULL,
  `gender` varchar(1) DEFAULT NULL,
  `email` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

建立与之对应的bean文件

package com.atguigu.mybatis.bean;

public class Employee {

    private Integer id;
    private String lastName;
    private String email;
    private String gender;

    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getLastName() {
        return lastName;
    }
    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public String getGender() {
        return gender;
    }
    public void setGender(String gender) {
        this.gender = gender;
    }
    @Override
    public String toString() {
        return "Employee [id=" + id + ", lastName=" + lastName + ", email="
                + email + ", gender=" + gender + "]";
    }

}

编写的时候最好保证bean对象的属性值和表名的字段一一对应,这里 private String lastName;和表字段last_name不对应我们看后面如何处理了这是一个关键点

导入所需的jar包

mybatis用到了log4j我们需要在src目录下建立一个log4j.xml

我们创建一个source folder文件夹,必须是这个类型的文件夹,该类型下的文件夹和src在同一目录

source folder文件夹是一种特别的文件夹,如果你用面向对象的思想去看待这个source folder,那么他是folder的一个子集,作为子集,肯定是有folder的所有功能,而且还有自己特别的功能,他的特别之处,就是在source folder下面的java文件都会被编译,编译后的文件会被放在我们设置的某个文件夹下面(一般我们设置成WEB-INF/classes)

log4m.xml文件夹的内容如下

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

 <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
   <param name="Encoding" value="UTF-8" />
   <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss,SSS} %m  (%F:%L) \n" />
   </layout>
 </appender>
 <logger name="java.sql">
   <level value="debug" />
 </logger>
 <logger name="org.apache.ibatis">
   <level value="info" />
 </logger>
 <root>
   <level value="debug" />
   <appender-ref ref="STDOUT" />
 </root>
</log4j:configuration>

mybatis-config.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
 PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
                <property name="username" value="root" />
                <property name="password" value="123456" />
            </dataSource>
        </environment>
    </environments>
    <!-- 将我们写好的sql映射文件(EmployeeMapper.xml)一定要注册到全局配置文件(mybatis-config.xml)中 -->
    <mappers>
        <mapper resource="EmployeeMapper.xml" />
    </mappers>
</configuration>

EmployeeMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.atguigu.mybatis.dao.EmployeeMapper">
<!--
namespace:名称空间;指定为接口的全类名
id:唯一标识
resultType:返回值类型
#{id}:从传递过来的参数中取出id值

public Employee getEmpById(Integer id);
 -->
    <select id="getEmpById" resultType="com.atguigu.mybatis.bean.Employee">
        select id,last_name lastName,email,gender from tbl_employee where id = #{id}
    </select>
</mapper>

上面因为bean的属性和数据库表名不一样,如何解决了在编写mysql的时候可以使用别名的方式来解决select id,last_name lastName,email,gender from tbl_employee where id = #{id} 这里起了一个别名,last_name lastName 第一个是bean中的属性值,第二个是数据库的列名

否则会出现问题

EmployeeMapper

package com.atguigu.mybatis.dao;

import com.atguigu.mybatis.bean.Employee;

public interface EmployeeMapper {

    public Employee getEmpById(Integer id);

}

MyBatisTest.java

package com.atguigu.mybatis.test;

import java.io.IOException;
import java.io.InputStream;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;

import com.atguigu.mybatis.bean.Employee;
import com.atguigu.mybatis.dao.EmployeeMapper;

/**
 * 1、接口式编程
 *     原生:        Dao        ====>  DaoImpl
 *     mybatis:    Mapper    ====>  xxMapper.xml
 *
 * 2、SqlSession代表和数据库的一次会话;用完必须关闭;
 * 3、SqlSession和connection一样她都是非线程安全。每次使用都应该去获取新的对象。
 * 4、mapper接口没有实现类,但是mybatis会为这个接口生成一个代理对象。
 *         (将接口和xml进行绑定)
 *         EmployeeMapper empMapper =    sqlSession.getMapper(EmployeeMapper.class);
 * 5、两个重要的配置文件:
 *         mybatis的全局配置文件:包含数据库连接池信息,事务管理器信息等...系统运行环境信息
 *         sql映射文件:保存了每一个sql语句的映射信息:
 *                     将sql抽取出来。
 *
 *
 * @author lfy
 *
 */
public class MyBatisTest {

    public SqlSessionFactory getSqlSessionFactory() throws IOException {
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        return new SqlSessionFactoryBuilder().build(inputStream);
    }

    /**
     * 1、根据xml配置文件(全局配置文件)创建一个SqlSessionFactory对象 有数据源一些运行环境信息
     * 2、sql映射文件;配置了每一个sql,以及sql的封装规则等。
     * 3、将sql映射文件注册在全局配置文件中
     * 4、写代码:
     *         1)、根据全局配置文件得到SqlSessionFactory;
     *         2)、使用sqlSession工厂,获取到sqlSession对象使用他来执行增删改查
     *             一个sqlSession就是代表和数据库的一次会话,用完关闭
     *         3)、使用sql的唯一标志来告诉MyBatis执行哪个sql。sql都是保存在sql映射文件中的。
     *
     * @throws IOException
     */
    @Test
    public void test() throws IOException {

        // 2、获取sqlSession实例,能直接执行已经映射的sql语句
        // sql的唯一标识:statement Unique identifier matching the statement to use.
        // 执行sql要用的参数:parameter A parameter object to pass to the statement.
        SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();

        SqlSession openSession = sqlSessionFactory.openSession();
        try {
            Employee employee = openSession.selectOne(
                    "com.atguigu.mybatis.dao.EmployeeMapper.getEmpById", 1);
            System.out.println(employee);
        } finally {
            openSession.close();
        }

    }

    @Test
    public void test01() throws IOException {
        // 1、获取sqlSessionFactory对象
        SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
        // 2、获取sqlSession对象
        SqlSession openSession = sqlSessionFactory.openSession();
        try {
            // 3、获取接口的实现类对象
            //会为接口自动的创建一个代理对象,代理对象去执行增删改查方法
            EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class);
            Employee employee = mapper.getEmpById(1);
            System.out.println(mapper.getClass());
            System.out.println(employee);
        } finally {
            openSession.close();
        }

    }

}

4.尚硅谷_MyBatis_接口式编程.avi

注意几点:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.atguigu.mybatis.dao.EmployeeMapper">
<!--
namespace:名称空间;指定为接口的全类名
id:唯一标识
resultType:返回值类型
#{id}:从传递过来的参数中取出id值

public Employee getEmpById(Integer id);
 -->
    <select id="getEmpById" resultType="com.atguigu.mybatis.bean.Employee">
        select id,last_name lastName,email,gender from tbl_employee where id = #{id}
    </select>
</mapper>第一点:namespace="com.atguigu.mybatis.dao.EmployeeMapper">对应的是需要访问的接口的全类名第二点:<select id="getEmpById"中id的值和接口下的   public Employee getEmpById(Integer id);名字一一对应在程序中我们就可以采用接口编程了
package com.atguigu.mybatis.test;

import java.io.IOException;
import java.io.InputStream;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;

import com.atguigu.mybatis.bean.Employee;
import com.atguigu.mybatis.dao.EmployeeMapper;

/**
 * 1、接口式编程
 *     原生:        Dao        ====>  DaoImpl
 *     mybatis:    Mapper    ====>  xxMapper.xml
 *
 * 2、SqlSession代表和数据库的一次会话;用完必须关闭;
 * 3、SqlSession和connection一样她都是非线程安全。每次使用都应该去获取新的对象。
 * 4、mapper接口没有实现类,但是mybatis会为这个接口生成一个代理对象。
 *         (将接口和xml进行绑定)
 *         EmployeeMapper empMapper =    sqlSession.getMapper(EmployeeMapper.class);
 * 5、两个重要的配置文件:
 *         mybatis的全局配置文件:包含数据库连接池信息,事务管理器信息等...系统运行环境信息
 *         sql映射文件:保存了每一个sql语句的映射信息:
 *                     将sql抽取出来。
 *
 *
 * @author lfy
 *
 */
public class MyBatisTest {

    public SqlSessionFactory getSqlSessionFactory() throws IOException {
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        return new SqlSessionFactoryBuilder().build(inputStream);
    }

    /**
     * 1、根据xml配置文件(全局配置文件)创建一个SqlSessionFactory对象 有数据源一些运行环境信息
     * 2、sql映射文件;配置了每一个sql,以及sql的封装规则等。
     * 3、将sql映射文件注册在全局配置文件中
     * 4、写代码:
     *         1)、根据全局配置文件得到SqlSessionFactory;
     *         2)、使用sqlSession工厂,获取到sqlSession对象使用他来执行增删改查
     *             一个sqlSession就是代表和数据库的一次会话,用完关闭
     *         3)、使用sql的唯一标志来告诉MyBatis执行哪个sql。sql都是保存在sql映射文件中的。
     *
     * @throws IOException
     */
    @Test
    public void test() throws IOException {

        // 2、获取sqlSession实例,能直接执行已经映射的sql语句
        // sql的唯一标识:statement Unique identifier matching the statement to use.
        // 执行sql要用的参数:parameter A parameter object to pass to the statement.
        SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();

        SqlSession openSession = sqlSessionFactory.openSession();
        try {
            Employee employee = openSession.selectOne(
                    "com.atguigu.mybatis.dao.EmployeeMapper.getEmpById", 1);
            System.out.println(employee);
        } finally {
            openSession.close();
        }

    }

    @Test
    public void test01() throws IOException {
        // 1、获取sqlSessionFactory对象
        SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
        // 2、获取sqlSession对象
        SqlSession openSession = sqlSessionFactory.openSession();
        try {
            // 3、获取接口的实现类对象
            //会为接口自动的创建一个代理对象,代理对象去执行增删改查方法
            EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class);
            Employee employee = mapper.getEmpById(1);
            System.out.println(mapper.getClass());
            System.out.println(employee);
        } finally {
            openSession.close();
        }

    }

}

 上面不在使用session的方法去增删改查,而使用getMapper将sql与接口对象进行绑定,获得接口操作的实现类,这样就可以使用接口的实现对象进行增删改查的操作了,接口的实现类是mybatis自己创建出来的,该对象是一个代理对象去实现增删改查操作。

5.尚硅谷_MyBatis_小结(1).aviSqlSession代表和数据库的一次会话;用完必须关闭,每一次增删改查都是一次会话SqlSession和connection一样她都是非线程安全。每次使用都应该去获取新的对象。所以不能定义成一个类的成员变量,各个方法进行共享,而应该每个方法使用都应用区获得新的对象

* 5、两个重要的配置文件:
* mybatis的全局配置文件:包含数据库连接池信息,事务管理器信息等...系统运行环境信息
* sql映射文件:保存了每一个sql语句的映射信息:
* 将sql抽取出来

6.尚硅谷_MyBatis_全局配置文件_引入dtd约束.avi
我们如何在mybatis的全局配置文件中如何能够引入源文件了在上面的mybatis-config.xml中我们引入了mybatis的约束文件"http://mybatis.org/dtd/mybatis-3-config.dtd">EmployeeMapper.xml中引入了"http://mybatis.org/dtd/mybatis-3-mapper.dtd">,我们如何因为该约束文件的源码了,第一找到mybatis的jar包将该jar包解压找到下面的两个文件

在eclipse中做下面操作

key type必须是URI

key就是对于的http://mybatis.org/dtd/mybatis-3-mapper.dtd

location就是解压对于的文件

引入之后在xml中就能够实现代码的自动提示了

7.尚硅谷_MyBatis_全局配置文件_properties_引入外部配置文件.avi

上面中因为conf是一个source folder文件夹,所以配置文件EmployeeMapper.xml和实体类Employee在同样的包名com.atguigu.mybatis.bean下,并且xml文件以实体类的类命名

dbconfig.properties

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis
jdbc.username=root
jdbc.password=123456

orcl.driver=oracle.jdbc.OracleDriver
orcl.url=jdbc:oracle:thin:@localhost:1521:orcl
orcl.username=scott
orcl.password=123456
<!--
        1、mybatis可以使用properties来引入外部properties配置文件的内容;
        resource:引入类路径下的资源
        url:引入网络路径或者磁盘路径下的资源
      -->
    <properties resource="dbconfig.properties"></properties>

mybatis-config.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
 PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--
        1、mybatis可以使用properties来引入外部properties配置文件的内容;
        resource:引入类路径下的资源
        url:引入网络路径或者磁盘路径下的资源
      -->
    <properties resource="dbconfig.properties"></properties>

    <!--
        2、settings包含很多重要的设置项
        setting:用来设置每一个设置项
            name:设置项名
            value:设置项取值
     -->
    <settings>
        <setting name="mapUnderscoreToCamelCase" value="true"/>
    </settings>

    <!-- 3、typeAliases:别名处理器:可以为我们的java类型起别名
            别名不区分大小写
    -->
    <typeAliases>
        <!-- 1、typeAlias:为某个java类型起别名
                type:指定要起别名的类型全类名;默认别名就是类名小写;employee
                alias:指定新的别名
         -->
        <!-- <typeAlias type="com.atguigu.mybatis.bean.Employee" alias="emp"/> -->

        <!-- 2、package:为某个包下的所有类批量起别名
                name:指定包名(为当前包以及下面所有的后代包的每一个类都起一个默认别名(类名小写),)
        -->
        <package name="com.atguigu.mybatis.bean"/>

        <!-- 3、批量起别名的情况下,使用@Alias注解为某个类型指定新的别名 -->
    </typeAliases>

    <!--
        4、environments:环境们,mybatis可以配置多种环境 ,default指定使用某种环境。可以达到快速切换环境。
            environment:配置一个具体的环境信息;必须有两个标签;id代表当前环境的唯一标识
                transactionManager:事务管理器;
                    type:事务管理器的类型;JDBC(JdbcTransactionFactory)|MANAGED(ManagedTransactionFactory)
                        自定义事务管理器:实现TransactionFactory接口.type指定为全类名

                dataSource:数据源;
                    type:数据源类型;UNPOOLED(UnpooledDataSourceFactory)
                                |POOLED(PooledDataSourceFactory)
                                |JNDI(JndiDataSourceFactory)
                    自定义数据源:实现DataSourceFactory接口,type是全类名
         -->

    <environments default="dev_mysql">
        <environment id="dev_mysql">
            <transactionManager type="JDBC"></transactionManager>
            <dataSource type="POOLED">
                <property name="driver" value="${jdbc.driver}" />
                <property name="url" value="${jdbc.url}" />
                <property name="username" value="${jdbc.username}" />
                <property name="password" value="${jdbc.password}" />
            </dataSource>
        </environment>

        <environment id="dev_oracle">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED">
                <property name="driver" value="${orcl.driver}" />
                <property name="url" value="${orcl.url}" />
                <property name="username" value="${orcl.username}" />
                <property name="password" value="${orcl.password}" />
            </dataSource>
        </environment>
    </environments>

    <!-- 5、databaseIdProvider:支持多数据库厂商的;
         type="DB_VENDOR":VendorDatabaseIdProvider
             作用就是得到数据库厂商的标识(驱动getDatabaseProductName()),mybatis就能根据数据库厂商标识来执行不同的sql;
             MySQL,Oracle,SQL Server,xxxx
      -->
    <databaseIdProvider type="DB_VENDOR">
        <!-- 为不同的数据库厂商起别名 -->
        <property name="MySQL" value="mysql"/>
        <property name="Oracle" value="oracle"/>
        <property name="SQL Server" value="sqlserver"/>
    </databaseIdProvider>

    <!-- 将我们写好的sql映射文件(EmployeeMapper.xml)一定要注册到全局配置文件(mybatis-config.xml)中 -->
    <!-- 6、mappers:将sql映射注册到全局配置中 -->
    <mappers>
        <!--
            mapper:注册一个sql映射
                注册配置文件
                resource:引用类路径下的sql映射文件
                    mybatis/mapper/EmployeeMapper.xml
                url:引用网路路径或者磁盘路径下的sql映射文件
                    file:///var/mappers/AuthorMapper.xml

                注册接口
                class:引用(注册)接口,
                    1、有sql映射文件,映射文件名必须和接口同名,并且放在与接口同一目录下;
                    2、没有sql映射文件,所有的sql都是利用注解写在接口上;
                    推荐:
                        比较重要的,复杂的Dao接口我们来写sql映射文件
                        不重要,简单的Dao接口为了开发快速可以使用注解;
        -->
        <!-- <mapper resource="mybatis/mapper/EmployeeMapper.xml"/> -->
        <!-- <mapper class="com.atguigu.mybatis.dao.EmployeeMapperAnnotation"/> -->

        <!-- 批量注册: -->
        <package name="com.atguigu.mybatis.dao"/>
    </mappers>
</configuration>

注意点:使用properties 标签导入外面的dbconfig.properties文件

<setting name="mapUnderscoreToCamelCase" value="true"/>设置向映射下划线映射成驼峰命名

作用例如数据库的字段是last_name,实体类的字段是private String lastName;,在mybatis执行查询

<select id="getEmpById" resultType="com.atguigu.mybatis.bean.Employee">
select * from tbl_employee where id = #{id}
</select>

会把数据库的last_name的字段转化成lastName达到一一对应,但是在写代码的时候最好数据库的字段和实体类属性一一对应。

原文地址:https://www.cnblogs.com/kebibuluan/p/8921966.html

时间: 2024-08-02 07:12:11

3.尚硅谷_MyBatis_HelloWorld.avi的相关文章

尚硅谷java学科新增面试宝典视频教程

下载地址:百度网盘下载 01_尚硅谷_JavaSE面试题:自增变量.avi02_尚硅谷_JavaSE面试题:单例设计模式.avi03_尚硅谷_JavaSE面试题:类初始化和实例初始化等.avi04_尚硅谷_JavaSE面试题:方法的参数传递机制.avi05_尚硅谷_JavaSE面试题:递归与迭代.avi/ y5 H4 N9 v6 k; t1 }06_尚硅谷_JavaSE面试题:成员变量与局部变量.avi1 I5 k& R5 c& d07_尚硅谷_SSM面试题_Spring Bean的作用域

尚硅谷Java视频_jQuery 视频教程

更多Java培训.Java视频教程学习资料,请登录尚硅谷网站下载:www.atguigu.com jQuery是优秀的JavaScript框架,能使用户能更方便地处理HTML documents.events.实现动画效果,并且方便地为网站提供Ajax交互.在世界前10000个访问最多的网站中,有超过 55 6在使用jQuery. 本Java视频教程循序渐进地对jQuery的各种选择器.函数和方法调用进行了详细的讲授,更配备了大量的实例. [视频简介] jQuery 是继 Prototype 之

java学习笔记-尚硅谷0918班高宏*:康师傅,给力,太给力了

不知不觉来尚硅谷java培训已经一个月了,这一个月就这么悄悄地溜走了,无声无息,没给一点挽留的余地,只留下我们在这里感叹:时间都去哪了.就好像只有在写总结的时候才恍然明白:原来我们已经学习了一个多月了.这个月是忙碌的一个月,比上班还要忙:这个月是充实的一个月,比堕落时玩游戏还感觉充实:这个月更是收获的一个月,比上学时候感觉学的还要多,还要深.        1.教学方面 教学方面必须要说康师傅了,给力,太给力了,问的问题总是讲的很透彻,很深入,课堂气氛也搞得很好,经常性习惯性的来几个段子让我们捧

java学习笔记-0918班亓东*:尚硅谷班级的学习气氛浓厚

转眼来北京java培训一个月过去,在这一个月里我认识了很多老师和同学,让我有种重新回到学生时代上学时感觉,这的学习气氛很好,每个同学都很用功的学习,有些基础好的同学也很愿意帮助别人,同学之间的相互关心,相互帮助,解决了很多学习上的问题,说起来还要感谢我的同桌,没有他的帮助我想我也会学的很吃力,每次遇到问题他都能及时帮同学解决,同学之间的彼此帮助,让班级的学习气氛更加浓厚,营造一个良好的学习氛围,对于将来的学习会大有帮助,好的学习氛围是大家共同努力的成果. 在尚硅谷java培训每个阶段都会有阶段性

java学习笔记-尚硅谷0918班刘*:我和宋老师建立了亲密无间的基友关系

时光冉冉,岁月如歌,时光如酒,转眼间我就已经步入了人生的第24个年头选择在北京尚硅谷java培训机构来学校.亦或时,我也会在寂寞无人的夜晚,冰冷孤寂的房间,点燃一根香烟,在烟雾袅袅中,深深的问自己,你,有考虑过自己的人生么!!!!亦或时,躺在床上辗转难眠之后,默默的对自己说,你!不能再这么下去了!!!! 是的,我已经二十四岁了,二十四岁的年纪,当周围邻居的小孩开始叫你叔叔的时候,你有木有感觉到一种~~~啊!人生!还真是失败呀!是的,我不能再这么下去了! 我走过风,走过雨,走过那条无人经过的小巷,

java学习笔记-0918班林代*:感谢尚硅谷给我这样一次改造的机会

时间的长河缓缓流淌,在不经意之间,我已经来到尚硅谷java培训一个多月了.还记得,当初义无反顾的报名参加了尚硅谷北京java培训.带着刚离职的失意以及对未来殷勤的企盼来到了北京,来到了这陌生的都市.陌生的学校. 一个多月了,说长不长,说短不短.在这里我认识了很多爱我的和我敬爱的老师们.同学们.喜欢和他们一起疯狂的玩闹,更享受和他们一起交流学习.我相信,有他们的陪伴我可以斗志昂扬的战胜学习路上的困难.而一个多月的学习也达成了我的目的,梳理自己原来会的知识,让那些知识更稳固的印刻在我的脑海里. 规划

java学习笔记-尚硅谷0918班史营营:学习并不难,难就难在坚持

我来到尚硅谷是被尚硅谷北京java培训的课程体系深深的吸引着,之前有看过佟老师的视频,讲课内容非常丰富,也很风趣,当时就在想如果我能达到佟老师一半的技术水平,那我就相当牛了.当然我现在已经身在尚硅谷了,我的第一位导师是宋老师,很帅气,讲课也很风趣,与很多培训机构不同,尚硅谷的课程设置为每天上下午各三小时,以讲解和宋老师现场编码为主.每上两三天课休息一天,进度安排也很合理.这样毫无水分的课程安排,好处自然是不言而喻的.时间安排紧凑,学生能够跟着老师的思路,模仿着进行操作,体会到真实项目中编程的感觉

java学习笔记-1205班刘*:尚硅谷的环境与氛围绝对是行业之中最顶尖的

时光匆匆,一转眼的时间,一个多月就过去了,回头想想这一个多月以来所得与所失,包括与新同学的接触与相处,与java新知识的理解与领悟,不禁暗自庆幸,这一趟来到这里的学习是非常值得的. 当经历着那些艰辛与困苦之时,我们深深得体会到了面临困境之时,那些痛彻,而经历过之后,这些艰难的岁月确像一笔珍贵的财富将永远存在我们的心中.还记得刚到尚硅谷之时,那些陌生的面孔,陌生的环境,陌生的人群,包括陌生的之时.一切陌生的东西都激起了我心底的厌恶之感,不得不说,我对于陌生的环境还是比较排斥的,但是,当我真正融入到

java学习日记-尚硅谷0722班熊*: 坚持自己的学习方式

在尚硅谷北京java培训机构经过一段时间的紧张学习,在老师的带领下我重温了一边java基础.将我以前没有掌握的io和反射系统的学习了一边.老师以表格的形式将io流的体系画出来,让我更好的整理了脑袋里混乱的流关系.                我很喜欢数据库的学习方式,每天讲完课后可以有大量的练习,通过不同的方式锻炼学习到的内容.如果java基础也能够像数据库一样每个章节讲完后有大量的练习题就好了.毕竟java处了理解还需要很多的练习才能融会贯通,特别是类和类之间的关系使用.