hibernate 小demo 出错 数据库没问题 给出个明确点或者错误方向太泛泛了不好

hibernate 小demo 出错 数据库没问题 给出个明确点或者错误方向太泛泛了不好,第1张

1、首先将Hibernate的jar包复制到Web项目的lib目录下。有些依赖jar包,要额外导入;比如cglib-nodepjar,不然会报错。

2、配置实体类。这里我用的是一个简单Account类,要注意使用的是javaxpersistense下面的注解,不是orghibernate下的。

package comjobhelpdomain;

import javaxpersistenceColumn;

import javaxpersistenceEntity;

import javaxpersistenceGeneratedValue;

import javaxpersistenceGenerationType;

import javaxpersistenceId;

import javaxpersistenceTable;

@Entity //@Entity表示该类能被hibernate持久化

@Table(name="user") //指定Entity对应的数据表名

public class Account {

@Id //指定该列为主键

@GeneratedValue(strategy=GenerationTypeAUTO) //auto为自增长

private Integer id;

@Column(name="name")

private String username;

@Column(name="password")

private String password;

public int getId() {

return id;

}

public void setId(int id) {

thisid = id;

}

public String getUsername() {

return username;

}

public void setUsername(String username) {

thisusername = username;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

thispassword = password;

}

}

3、在src目录下新建Hibernate的配置文件hibernatecfgxml。(MyEclipse向导会自动生成,我用的是Eclipse,就得自己创建了。)

hibernatecfgxml的内容如下:

<xml version="10" encoding="UTF-8">

<!DOCTYPE hibernate-configuration PUBLIC

"-//Hibernate/Hibernate Configuration DTD 30//EN"

">arr = split(数据字符串, ",")

for i=0 to Ubound(arr)

responseWrite arr(i)

next

SYSTEM/demo@demo

SYSTEM 用户名 /demo 密码 @demo 实例名

每个用户名都有一个默认的数据库

你用这个登录就是登录到这个用户的默认数据库

具体可以登录你的EM看看用户的默认数据库

第1步:本地单击“开始”菜单,找到ChemOffice文件夹(这里以ChemBioOffice 14为例),打开文件夹并双击其中的ChemBioFinder应用程序以打开ChemBioFinder。

第2步:在ChemBioFinder中单击“打开”命令并打开数据库文件(后缀名cfx),数据库文件一般位于系统安装文件目录中,在目录中有多个数据库文件,双击打开CS_DEMOcfx数据库文件。

第3步:在CS_DEMO数据库中,双击Structure下面的化学结构可以对化学式进行编辑,绘制者也可以右击化学结构并选择Edit in ChemDarw命令在ChemDraw中编辑该化学结构。

第4步:在ChemBioFinder中单击Search菜单并选择Substructure子结构命令。

第5步:单击Search菜单的Similarity(类似)命令第6步:最后单击Search菜单的Find命令开始查找,最后检索出数据库中有285条含有苯环子结构记录以及132条类似物结构记录。

当ChemBioFinder检索结束之后,用户可以单击Switch to Table命令将数据转为列表形式,用户还可以为列表排序。

ThinkPHP内置了抽象数据库访问层,把不同的数据库 *** 作封装起来,我们只需要使用公共的Db类进行 *** 作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理。目前的数据库包括Mysql、SqlServer、PgSQL、Sqlite、Oracle、Ibase、Mongo,也包括对PDO的支持,如果应用需要使用数据库,必须配置数据库连接信息,数据库的配置文件有多种定义方式。

常用的配置方式是在项目配置文件中添加下面的参数:

<php

//项目配置文件

return array(

//数据库配置信息

'DB_TYPE' => 'mysql', // 数据库类型

'DB_HOST' => 'localhost', // 服务器地址

'DB_NAME' => 'thinkphp', // 数据库名

'DB_USER' => 'root', // 用户名

'DB_PWD' => '', // 密码

'DB_PORT' => 3306, // 端口

'DB_PREFIX' => 'think_', // 数据库表前缀

//其他项目配置参数

//

);

或者采用如下配置

'DB_DSN' => 'mysql://username:password@localhost:3306/DbName'

使用DB_DSN方式定义可以简化配置参数,DSN参数格式为:

数据库类型://用户名:密码@数据库地址:数据库端口/数据库名

如果两种配置参数同时存在的话,DB_DSN配置参数优先。

注意:如果要设置分布式数据库,暂时不支持DB_DSN方式配置。1

如果采用PDO驱动的话,则必须首先配置DB_TYPE 为pdo,然后还需要单独配置其他参数,例如:

//PDO连接方式

'DB_TYPE' => 'pdo', // 数据库类型

'DB_USER' => 'root', // 用户名

'DB_PWD' => '', // 密码

'DB_PREFIX' => 'think_', // 数据库表前缀

'DB_DSN' => 'mysql:host=localhost;dbname=thinkphp;charset=UTF-8'

注意:PDO方式的DB_DSN配置格式有所区别,根据不同的数据库类型设置有所不同。

配置文件定义的数据库连接信息一般是系统默认采用的,因为一般一个项目的数据库访问配置是相同的。该方法系统在连接数据库的时候会自动获取,无需手动连接。

可以对每个项目和不同的分组定义不同的数据库连接信息,如果开启了调试模式的话,还可以在不同的应用状态的配置文件里面定义独立的数据库配置信息。1

第二种 在模型类里面定义connection属性

如果在某个模型类里面定义了connection属性的话,则实例化该自定义模型的时候会采用定义的数据库连接信息,而不是配置文件中设置的默认连接信息,通常用于某些数据表位于当前数据库连接之外的其它数据库,例如:

//在模型里单独设置数据库连接信息

protected $connection = array(

'db_type' => 'mysql',

'db_user' => 'root',

'db_pwd' => '1234',

'db_host' => 'localhost',

'db_port' => '3306',

'db_name' => 'thinkphp'

);

也可以采用DSN方式定义,例如:

//或者使用DSN定义

protected $connection = 'mysql://root:1234@localhost:3306/thinkphp';

如果我们已经在配置文件中配置了额外的数据库连接信息,例如:

//数据库配置1

'DB_CONFIG1' => array(

'db_type' => 'mysql',

'db_user' => 'root',

'db_pwd' => '1234',

'db_host' => 'localhost',

'db_port' => '3306',

'db_name' => 'thinkphp'

),

//数据库配置2

'DB_CONFIG2' => 'mysql://root:1234@localhost:3306/thinkphp';

那么,我们可以把模型类的属性定义改为:

//调用配置文件中的数据库配置1

protected $connection = 'DB_CONFIG1';

//调用配置文件中的数据库配置2

protected $connection = 'DB_CONFIG2';

如果采用的是M方法实例化模型的话,也可以支持传入不同的数据库连接信息,例如:

$User = M('User','other_','mysql://root:1234@localhost/demo');

表示实例化User模型,连接的是demo数据库的other_user表,采用的连接信息是第三个参数配置的。如果我们在项目配置文件中已经配置了DB_CONFIG2的话,也可以采用:

$User = M('User','other_','DB_CONFIG2');

如果你的个别数据表没有定义任何前缀的话,可以在前缀参数中传入NULL,例如:

$User = M('User',Null,'DB_CONFIG2');

表示实例化User模型,连接的是demo数据库的user表。

需要注意的是,ThinkPHP的数据库连接的惰性的,所以并不是在实例化的时候就连接数据库,而是在有实际的数据 *** 作的时候才会去连接数据库(额外的情况是,在系统第一次实例化模型的时候,会自动连接数据库获取相关模型类对应的数据表的字段信息)。

在一个页面插入用户名和密码文本输入框和button按钮,然后在button按钮的单击事件里填入代码,代码思路的基本过程是:

1、连接数据库代码

2、接收用户名和密码变量,并将其输入数据库的相应字段。

仰韶图语网站为您解答,如有不解的问题请继续

如何处理Spring,Ibatis结合MySQL数据库使用时的事务 *** 作Demo

取决于创建服务器时所选的服务层版本,每个服务器有一定的容量可用于存储数据,例如本例中这台服务器的存储量为 102400MB(100GB)。

在每台服务器上可以创建无限数量个数据库,但所有数据库需要共享这些容量。

以上就是关于hibernate 小demo 出错 数据库没问题 给出个明确点或者错误方向太泛泛了不好全部的内容,包括:hibernate 小demo 出错 数据库没问题 给出个明确点或者错误方向太泛泛了不好、ASP access数据库中 表名称 demo 字段名称 a 里面数据库是 /img/1.jpg,/img/2.jpg,/img/3.jpg、请问,oracle导入语句中imp SYSTEM/demo@demo ,哪个是指你要导入的数据库没有指定你要导入的用户名吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9346333.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存