26.多态扩展实例——连接数据库

需求:数据库的操作
数据是用户信息
1.连接数据库 JDBC Hibernate
2.操作数据库
c create r read u update d delete
3.关闭数据库连接

public class DuoTai_06 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		UserInfoDao ui=new UserInfoJDBC();
		ui.add(new User());
		ui.delete(new User());
	}
}
interface UserInfoDao{
	public abstract void add(User user);
	public abstract void delete(User user);
}
class UserInfoJDBC implements UserInfoDao{
	public void add(User user){
		/*
		 1.JDBC连接数据库
		 2.使用sql添加语句添加数据
		 3.关闭连接
		 */
	}
	public void delete(User user){
		/*
		 1.JDBC连接数据库
		 2.使用sql添加语句删除数据
		 3.关闭连接
		 */
	}
}
class UserInfoHibernate implements UserInfoDao{
	public void add(User user){
		/*
		 1.Hibernate连接数据库
		 2.使用sql添加语句添加数据
		 3.关闭连接
		 */
	}
	public void delete(User user){
		/*
		 1.Hibernate连接数据库
		 2.使用sql添加语句删除数据
		 3.关闭连接
		 */
	}
}
class User{

}

  

原文地址:https://www.cnblogs.com/syj1993/p/8183517.html

时间: 2024-10-16 02:38:39

26.多态扩展实例——连接数据库的相关文章

面向对象-多态的扩展实例

/** * 注意:以下语句为非可执行语句.不能运行 * Created by rabbit on 2014-07-29. * 需求 * 对数据库进行操作 * * 1.连接数据库 * 两种连接方式 * a.JDBC(java数据库连接) * b.Hibernate(框架连接) * * 2.操作数据库 * c create r read u update d delete * * 3.断开数据库 * * userinfoDAO * DAO data access object */ interfac

js 扩展实例

//扩展实例1 字符串中首字符转大写 var test=' this is '; String.prototype.mytrim=function(){ var re=/^\s+(.*?)\s+$/; return this.replace(re,'$1'); }; console.log('['+test+']'); console.log('['+test.trim()+']'); //test.mytrim() 等价于:test.replace(re,'$1'); console.log(

Java学习-039-源码 jar 包的二次开发扩展实例(源码修改)

最近在使用已有的一些 jar 包时,发现有些 jar 包中的一些方法无法满足自己的一些需求,例如返回固定的格式,字符串处理等等,因而需要对原有 jar 文件中对应的 class 文件进行二次开发扩展,并重新打包文件,替换原有的 jar 文件,满足测试开发自身的需求. 下面以修改 eclipse 默认注释中的 ${date} 和 ${time} 对应的返回样式(如下图所示),进行实例说明. 整个二次开发的过程如下所示: 0.未修改之前,生成注释的日期.时间显示格式如下所示: 1.获取对应的 jar

jQuery EasyUI API 中文帮助文档和扩展实例

下载地址:jQuery EasyUI API 中文帮助文档 1.validatebox验证和提示框扩展: //弹框 $.extend({ show_alert: function (strTitle, strMsg) { $.messager.alert(strTitle, strMsg); } }); //扩展validatebox,添加验证 $.extend($.fn.validatebox.defaults.rules, { eqPwd: { validator: function (va

jquery如何自定义插件(扩展实例/静态方法)

1.jquery插件的种类: 1).封装对象方法的插件(相当于实例方法) (使用 $.fn.extend({"方法名":function(参数){//方法体} }) ) 2).封装全局函数的插件(相当于$的静态方法) 3).选择器插件 2.注意点 1).插件文件命名规范:jquery.[插件名].js 2).对象方法附加到 jQuery.fn对象上 静态方法附加到jQuery对象本身上 3).在插件内部,this指向的是选择器获取的jQuery对象,而不是Dom对象 4).可通过 th

Java中多态的实例

1 public class cf { 2 3 /** 4 * 实际上这里涉及方法调用的优先问题, 5 * 优先级由高到低依次为:this.show(O).super.show(O).this.show((super)O).super.show((super)O). 6 */ 7 public static void main(String[] args) { 8 9 A a1 = new A(); 10 A a2 = new B(); 11 B b = new B(); 12 C c = ne

java多态抽象类实例

编写一个Soldier类,描述具有普遍行为和属性的一个士兵对象. 编写陆军士兵.海军士兵.军官类来扩展Soldier类. 设计Soldier类的相关属性和方法. 建模几个陆军士兵.海军士兵.军官类来继承Soldier类,增加各自特有的属性和方法并重写相应的方法. public class SoldierDemo { public static void main(String[] args) { // TODO Auto-generated method stub Leader leader =

PHP单例模式实例,连接数据库对类的引用

<?php//单例模式连接数据库class pzhang{ static private $instance; private static $config; private $dbase = array( 'host' => 'localhost', 'username' =>'root', 'password'=>'root', 'dbname' =>'jmyp' ); private function __construct(){ } static public fun

javascript、jQuery的扩展方法,扩展实例展示代码

$(function () {    var total = 0, height = $(window).height(), memberScroll, cartScroll, proScroll;    $.cart = {        succ: function (data, status, xhr) {            data.Status == 1 ?   $.dialog(data.Message, { header: { title: "添加商品", close