本人初学java一年。现在到了做项目了。项目需求:JSP页面与MySQL数据库连接、MVC模式等。现在很迷茫。不知道要做啥项目才能体现需求
!
JSP是Java Web开发的传统技术之一,虽然弊端比较多,比如业务逻辑与显示逻辑耦合、无法分别部署、开发角色分工不清等问题,但是JSP对于初学者来说还是有一定的学习必要性,有不少遗留项目依然需要采用JSP技术。
数据库作为一个提供了强大的关系型持久存储和查找的数据模型,通常操作数据库需要使用专门的结构化语言(SQL)进行操作,而连接不同的数据库(oracle,mysql,sqlserver等)所需要注册的驱动都不同,导致其他语言连接数据库存在困难!
而JAVA中抽象了一组连接数据库的接口和类,jdbc(JAVA database connectivity)专门为不同的数据库提供统一的标准进行连接,可以说无论连接数据库的框架怎么封装,底层都是使用的java jdbc!
下面看下jdbc连接数据库的步骤:
①,注册驱动:不同的数据库提供商会提供不同的驱动类进行注册使用,通常使用JNDI反射的方式进行,eg: Class.forName(\"com.mysql.jdbc.Driver\");
②,创建连接:包括数据库连接地址,库,用户名和密码用于连接数据库服务并进行认证,eg:Connection connection = DriverManager.getConnection(x,x,x);
③,执行SQL:创建statement对象,获取执行sql的实例,调用SQL的执行方法!eg:Statement s =connnection.createStatement();s.excuteQuery(\"select * fron t\");
④,组装结果:statement中执行方法会得到相应的返回值,使用resultSet进行接受后处理数据!eg:ResultSet r=s.excuteQuery();
String name =r.getString(\"name\");
⑤,关闭连接:至关重要的一步,因为像oracle就是根据连接时间进行收费的,如果一直开着连接,破产指日可待!connection.close();
上面提到了,任何其他的JAVA框架(mybatis,hibenate,springTemplate等)基本都是封装了原生的jdbc进行操作数据库,所以免不了上诉几个步骤!
我们看到,对于数据库驱动注册,连接开启和关闭这些与业务无关的东西其实并不是开发者关心的,所以进一步的封装很有必要!
spring是怎么进行封装的呢?
1,封装驱动注册和连接:spring通过dbcp等数据源实现包,只需要配置数据库驱动信息,连接信息等就可以实现自动注册和连接数据库,并通过配置destroy-method =true就可以在自动关闭连接!
2,提供jdbcTemplate更为丰富的API,实现更加简便的开发流程,包括增删改查,batch处理等!
如下面代码所示:
jdbcTemplate.queryForInt(\"select count(*) from test\");
//2. 查询一行数据并将该行数据转换为Map返回 jdbcTemplate.queryForMap(\"select * from test where name='name5'\");
//3.查询一行任何类型的数据,最后一个参数指定返回结果类型 jdbcTemplate.queryForObject(\"select count(*) from test\", Integer.class);
//4.查询一批数据,默认将每行数据转换为Map jdbcTemplate.queryForList(\"select
可以说springTemplate的封装十分轻量级,可以用于替代原生jdbc的开发,不过现在大多数企业都是用的mybatis,提供缓存,动态SQL,方便的映射的ORM框架,是值得学习的数据库操作框架,今天的分享就到这,更多的技术分享,敬请关注!!