- 浏览: 18084 次
- 性别:
- 来自: 北京
最新评论
文章列表
2.设置和配置
2.1 设置
在EJB3.0/ JPA兼容的Hibernate EntityManager的是建立在Hibernate的核心和Hibernate Annotations的顶部。你必须使用每个模块的兼容版本。在hibernate.org的下载部分请参考兼容性。下面的库必须在你的classpath路径下: hibernate3.jar, hibernate-annotations.jar, hibernate-commons-annotations.jar, hibernate-entitymanager.jar 和所有需要的第三方库的每个软件包(包括EJB-persisten ...
2.4 在Java SE环境中获取一个EntityManager
实体管理器工厂应被视为一个不变的配置支架,它被定义为指向一个单一的数据源和映射定义的一组实体。这是来创建和管理EntityManagers的入口点。Persistence 类是来创建一个实体管理器工厂的引用类。
// Use persistence.xml configuration
EntityManagerFactory emf = Persistence.createEntityManagerFactory("manager1")
EntityManager em = emf.createEnt ...
2.3 事件监听
Hibernate的实体管理加强Hibernate的核心,通过Hibernate的事件监听系统,实现了所有的EJB3的语义。当您使用事件系统自己要小心,你可能会覆盖一些EJB3的语义。一个安全的办法就是给你的事件侦听器添加到下面给出的列表中。
表2.2 Hibernate的实体管理器的默认事件监听器
Event
Listeners
flush
org.hibernate.ejb.event.EJB3FlushEventListener
auto-flush
org.hibernate.ejb.event.EJB3AutoFlushEventListe ...
2.2 配置与引用
2.2.1 配置
无论是一个应用服务器还是单独的一个应用服务程序都是在一个持久化的工程中去进行实体的管理配置。一个持久化的工程必须在工程的META-INF文件夹下配置一个persistence.xml文件。在你的持久化的工程中所有的注解类(ie 具有一个@Entity注解)、所有的包以及所有的Hibernate的hbm.xml的配置文件都要添加到persistence.xm
IE中的textarea控制不了汉字的输入长度,所以只能自己去写一个脚本取判断。
在web页面中:
<textarea rows="6" cols="40" id="memo" name="memo" class="txt" onpropertychange="Javascript:zlpc(200);" onpaste="return false;" style='height: 101px;width: 535px;'></te ...
IF语句
---语法结构
IF search_condition THEN statement_list
[ELSEIF search_condition THEN statement_list]....
[ELSE statement_list]
END IF
---举例
if i_staff_id = 2 then
set @x1 = @x1 + d_amount;
else
set @x2 = @x2 + d_amount;
end if;
CASE语句
---CASE语句的语法格式
CASE case_value
WHEN w ...
在存储过程中可以使用光标对结果集进行循环处理,光标的使用包括光标的声明、open、fetch、close。语法如下:
--声明光标
DECLARE cur_name CURSOR FOR select_statement
--open光标
OPEN cursor_name
--FETCH 光标
FETCH cursor_name INTO var_name [,var_name....]
--close光标
CLOSE cursor_name
举例说明:
delimiter $$ --将;结束符改变为$$
--创建存储过程
CREATE PROCEDURE paymen ...
存储过程中可以使用变量、条件
1.定义变量
通过DECLARE可以定义一个变量,不过是局部的。它的作用范围只能在BEGIN...END有效,可以用在嵌套的块中;当然可以用default设置默认值。
DECLARE var_name [,.....] type [DEFAULT value]
示例:定义一个变量
DECLARE last_day_start DATE --定义一个DATE型的变量,名称为last_day_start
2.变量赋值
可以直接赋值,可以查询赋值。
--直接赋值使用set,可以赋常量或者赋表达式
--语法格式
SET var_name = expr ...
存储过程是经过编译之后存放在数据库中的sql语句集合。
存储过程怎么写
看例子:
存储过程的语法
create procedure proc_name (proc_peremeter1,.....) --存储过程名称和参数
[characteristic ....]
routine_body --存储过程
调用存储过程的语法
call proc_name --调用存储过程
示例 创建存储过程
当然创建存储过程之前先建立相关的表,为了学习只建立一个简单的表结构;
CREATE TABLE filmall (
id smallint(5) NOT NULL,
...
比较after insert、before insert、after update、before update触发时间与事件 的触发情况。
--创建表
create table film_text(
id smallint auto_increment,
name varchar(40),
txt text,
primary key(id)
);
对于film表在 触发器 一 里有提过,代码就不写了。
针对表film 创建before insert 触发器:
--创建before insert 触发器
create trigger trigge ...
mysql从5.0.2版本开始支持触发器的功能。
触发器是什么?触发器就是与表有关的数据库对象,在满足定义的条件时触发,并且执行触发器中定义的语句。
我们来看一下触发器的语法结构:
create trigger trigger_name trigger_time trigger_event
on table_name
for each row
begin
trigger_stmt
end;
trigger_name是说明触发器的名称;
trigger_time是说明触发器的时间,after、before;
trigger_event是说明触发器的事 ...
一、 字符串函数
CANCAT(S1,S2,...Sn) --选择S1,S2,...Sn 为一个字符串
INSERT(str,x,y,instr) --将字符串str从第x位置开始,y个字符长的子串替换为字符串instr
LOWER(str) --将字符串str中所有字符变为小写
UPPER(str) --将字符串str中所有字符变为大写
LEFT(str,x) --返回字符串str最左边的x个字符
RIGHT(str,x) --返回字符串str ...
Mysql那些事儿之(八)索引
- 博客分类:
- Mysql那些事儿
一、用Alter语句创建与删除索引
索引有一下三种情况:
INDEX:普通的索引,索引的列可以包含重复的值。
UNIQUE:唯一索引,保证了索引的列不包含重复的值。
PRIMARY KEY: 它是一个具有PRIMARY 的UNIQUE索引。这表示一个表只能包含一个PRIMARY KEY。
ALTER tablename ADD INDEX index_name (column_list)
ALTER tablename ADD UNIQUE index_name (column_list)
ALTER tablen ...
一、表的别名
这是让查询出的数据按表的年龄排序。
如果在一张宠物表里,想让宠物配对,可以这样利用表的别名:
SELECT p1.name,p1.sex,p2,name,p2.sex FROM pet AS p1,pet AS p2 WHERE p1.species = p2.species AND p1.sex="M" AND p2.sex="F";
这个语句的意思是按 物种配对,性别是M和F;
二、列的别名
...
一、标准的SQL模式匹配
mysq的匹配模式可以使用“_”匹配任何单个字符,“%”来匹配任意数目的字符。
使用sql模式时,不能使用=或者!=,应该使用 LIKE 或者 NOT LIKE 比较操作符。
举例:
1.在student表中找出以“b”开头的名字。
SELECT * FROM student WHERE name LIKE "b%";
2.在student表中找出以“b”结尾的名字。
SELECT * FROM student WHERE name LIKE &qu ...