mysql ssh_ssh与mysql基础知识

本文介绍了Hibernate框架中的saveorupdate()、save()和update()方法的区别与应用,并讲解了数据库表字段的修改、添加和删除操作。此外,还探讨了图片存储方式的选择以及一些SQL语句的使用。
摘要由CSDN通过智能技术生成

saveorupdate()如果传入的对象在数据库中有就做update操作,如果没有就做save操作。

save()在数据库中生成一条记录,如果数据库中有,会报错说有重复的记录。

update()就是更新数据库中的记录

主键在saveorupdate()方法中是起着关键作用的,只有这个主键的值不为空的时候才进行insert还是update的判断,否则直接insert

若主键不为空,就可以进行saveorupdate()操作了。

save是返回插入数据的主见的,而saveOrUpdate是void

save方法更适用于确定了是要插入,而且需要得到插入数据的主键

而saveOrUpdate更倾向于不缺定是插入还是更新,而且你不需要得到他的主键

另一方面,如果你无法确定你要插入或更新的对象是不是持久态或游离态时。如果你save一个持久态或更新一个游离态,这都是有问题的,此时搜索你就要用到saveOrUpdate

总体来说,如果你能确定你即将操作对象的状态,则不需要用saveOrUpdate

7.Hibante用的样板

8.Hibernate的模糊查询

9.

mysql数据库可以存图片吗?

破碎这是事实 | 浏览 2820 次

发布于2016-06-08 20:38  最佳答案

可以。存图片的列需要设置成BLOB、MEDIUMBLOB或LONGBLOB等数据类型。

但是以前基本上不会把图片直接存在数据库里,因为数据库里的数据是为了用来快速分析、快速存取的,图片数搜索据在mysql里既不能建立索引也不能和其他数据一起分析,存取速度和读写磁盘也没什么区别,每次备份、导入导出数据库时还增加了数据量,降低了效率。所以一般都是把图片存在系统里,然后把图片的存放路径放在数据库里。

this.getHibernateTemplate().find("from bean.User u

where u.name like ?", "%test%");

10.

//修改作用 数据库添加新字段

ALTER TABLE FarmersStoreGoods ADD ProductUnivalentMax FLOAT;

、、添加

ALTER TABLE FarmersStoreGoods ADD Processor VARCHAR(20);

6.1.修改某个表的字段类型及指定为空或非空

>alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空];

删除字段:

alter table `user_movement_log` drop column Gatewayid

//修改

UPDATE farmersstoregoods SET figureName = 'haha' WHERE fid=44;

com.nmfz.app.manager.impl.LogisticsManHeft warehouseMan

11

//foreach的运用

${a.companyHuman}

12

//hibnate解决乱码

jdbc:mysql://localhost:3306/biao1?useUnicode=true&characterEncoding=UTF-8

13

6.1.修改某个表的字段类型及指定为空或非空

>alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空];

14

saveorupdate()如果传入的对象在数据库中有就做update操作,如果没有就做save操作。

save()在数据库中生成一条记录,如果数据库中有,会报错说有重复的记录。

update()就是更新数据库中的记录

主键在saveorupdate()方法中是起着关键作用的,只有这个主键的值不为空的时候才进行insert还是update的判断,否则直接insert

若主键不为空,就可以进行saveorupdate()操作了。

save是返回插入数据的主见的,而saveOrUpdate是void

save方法更适用于确定了是要插入,而且需要得到插入数据的主键

而saveOrUpdate更倾向于不缺定是插入还是更新,而且你不需要得到他的主键

另一方面,如果你无法确定你要插入或更新的对象是不是持久态或游离态时。如果你save一个持久态或更新一个游离态,这都是有问题的,此时搜索你就要用到saveOrUpdate

总体来说,如果你能确定你即将操作对象的状态,则不需要用saveOrUpdate

15

Hibernate的模板查询写法

http://www.cnblogs.com/JemBai/archive/2011/01/17/1937409.html

大概的删除,修改

http://blog.csdn.net/tianxiezuomaikong/article/details/53021895

17

//通过

function sub(btn){

var tds = btn.parentElement.parentElement.children;

var td = (tds[1]).innerHTML;

alert("测试是否获取到本行第一个表格的值: " + td);

var a=1;

$.ajax({

async: false,

type: "post",

data:"m_s_no="+td,

url: "<%=path%>/smallTowns_sp/skipPage.action",

success: function(data){

alert(td);

$("#ckshow")[0].innerHTML=data;

}

});

}

//点击通过window事件进入相对空间

//hibnate所有方法

https://zhidao.baidu.com/question/328004060874001125.html?fr=iks&word=bulk+Update%28String+queryString%2CObject+value%29%BA%CDbulk+update%28String%29%D3%C3%B7%A8&ie=gbk

//hibnate的hsq用法

http://blog.csdn.net/yu422560654/article/details/7741778

删除

//this.getHibernateTemplate().bulkUpdate(yujv);

System.out.println(HQL);

//int ii= getHibernateTemplate().bulkUpdate("delete from farmersstoregoods where fid=?", fid);

-1.requst接受前台值

HttpServletRequest request=ServletActionContext.getRequest();

String figureName_id=(String)request.getParameter("figureName_id");

System.out.println(figureName_id);

com/nmfz/app/model/supbackgman/ProductStore.hbm.xml

com/nmfz/app/model/supbackgman/ProductShelves.hbm.xml

com/nmfz/app/model/supHeft/LogisticsParcel.hbm.xml

com/nmfz/app/model/supHeft/LogisticsCompany.hbm.xml

<%=path%>/townshipManagement_sp/fuzzyquery.action

0。ajax接受的id的值

村长姓名:

var aa = document.getElementById('figureName').value;

1。获取

里面的id

var aa=document.getElementById("***").innerText;//td里只有字符的时候

2。mysql大全

http://www.cnblogs.com/yunf/archive/2011/04/12/2013448.html

3。mysql删除表中的某个列

ALTER TABLE 表名 DROP COLUMN 列名;

4//根据id方法produceviaNo()传值,在()里可以写值

不通过

5//乡级审核不通过 ${p.address}

function produceviaNo(fid){

var a=1;

alert("审核不通过");

$.ajax({

async: false,

type: "post",

data:"m_s_no="+a,

url: "<%=path%>/townshipManagementHuang_sp/auditNoXm.action?fid="+fid,

success: function(data){

alert("123");

$("#content")[0].innerHTML=data;

}

6//disabled="true "此果文字会变成灰色,不可编辑。

readOnly="true" 文字不会变色,也是不可编辑的

7.只显示input下边框

设置左边框宽度为0


8.使用ajax实现form表单提交数据

确认接收

其中confirmationTask 是function后面的名字

1.ajax中获取《form》中input id的值

var v = $("#address").val();

--------------------------------------------------------------------------------------------------------------------------

总结ssh增删改

(一)增加

1:form表单

乡镇:

乡镇:

添加

2:js

function tianjiaa(){

alert("进入保存ajax的添加");

var a=1;

$.ajax({

async: false,

type: "post",

data:$('#tianjiaid').serialize(),

url: "<%=path%>/smallTowns_sp/tianjiakaishi.action",

success: function(data){

alert("123");

$("#reviseview")[0].innerHTML=data;

}

});

}

3:action

public String tianjiakaishi(){

System.out.println("得呆滞");

System.out.println(smalltowns.getSmalltownsname());

System.out.println(smalltowns.getAttribute());

//villageOperationManager.addGoods(goods);

smallTownsManager.tianjia(smalltowns);

return "tianjiakaishiok";

}

4:接口

public void tianjia(Smalltowns smalltowns);

5:接口实现类

@Override

public void tianjia(Smalltowns smalltowns) {

// TODO Auto-generated method stub

System.out.println("产品添加");

System.out.println(smalltowns.getSmalltownsname());

System.out.println(smalltowns.getAttribute());

this.getHibernateTemplate().save(smalltowns);

System.out.println("ede1");

System.out.println(this.getHibernateTemplate().save(smalltowns));

}

(二)修改1:jsp页面

乡镇简介

id:

欢迎:

name="smalltowns.Smalltownsname">(乡)镇登录

修改

2:ajax

//修改js

function modifySave(){

var a=1;

$.ajax({

async: false,

type: "post",

//data:{"fid":fid,"smalltownsname":smalltownsname,"attribute":attribute,"identifier":identifier},

data:$('#selectForm').serialize(),

url: "<%=path%>/smallTowns_sp/modifySaveXm.action",

success: function(data){

alert("123");

$("#reviseview")[0].innerHTML=data;

}

});

}

3:action()

public String modifySaveXmAc(){

System.out.println("得到值1");

System.out.println(smalltowns.getId());

System.out.println("得到值2");

System.out.println(smalltowns.getSmalltownsname());

smallTownsManager.modifySave(smalltowns);

return"modifySaveXmAcok";

}

4:接口

public void modifySave(Smalltowns smalltowns);

5:接口实现类

@Override

public void modifySave(Smalltowns smalltowns) {

// TODO Auto-generated method stub

System.out.println("进入修改impl");

Query query=this.getSession().createQuery("update Smalltowns s set s.Smalltownsname=? where s.id=?")

.setParameter(0, smalltowns.getSmalltownsname()).setParameter(1, smalltowns.getId());

query.executeUpdate();

System.out.println("修改完成");

}

(三)删除

(1)jsp略

(2)ajax略

(3)xml略

(4)action

public String shanchu(){

//int id=Integer.parseInt(ServletActionContext.getRequest().getParameter("id"));

int id=7;

smallTownsManager.shanchu(id);

return "shanchuok";

}

(5)接口

public void shanchu(int id);

(6)接口实现类

@Override

public void shanchu(int id) {

// TODO Auto-generated method stub

System.out.println("删除产品");

Session s=this.getSession();

s.beginTransaction();

List list=(List)s.createQuery("select g from Smalltowns g where g.id="+id).list();

Smalltowns sm=list.get(0);

s.delete(sm);

s.getTransaction().commit();

}

(四)查询

(一)单表

(1)接口实现类

@Override

public PagerModel smallTownsAuditing(int offset, int pagesize) {

// TODO Auto-generated method stub

System.out.println("进入");

String hql="select s from Shenhe s";

System.out.println("hql------");

return this.searchPaginated(hql, offset, pagesize);

}

(2)接口

public PagerModel smallTownsAuditing(int offset,int pagesize);

(3)action

public String smallTownsAuditingAc(){

System.out.println("产品查询审核跳转");

int offset = 0;

try {

offset = Integer.parseInt(ServletActionContext.getRequest()

.getParameter("pager.offset"));

} catch (RuntimeException e) {

System.out.println("异常");

}

int pagesize = 10;

System.out.println(" 火1");

pm = smallTownsManager.smallTownsAuditing(offset, pagesize);

System.out.println(" 火2");

ServletActionContext.getRequest().setAttribute("pmm", pm);

System.out.println(" 火3");

return "smallTownsAuditingAcok";

}

(4)jsp略

(5)ajax略

(6)xml空间略

(二)多表

(1)@Override

public PagerModel indicationSmallTowns(int offset, int pagesize) {

// TODO Auto-generated method stub

System.out.println("进入首页乡镇显示的imp");

String hql="select s,sm,s.Smalltownsname from Smalltowns s,Smalltownsabstract sm where s.sid=sm.sid and s.id=1";

System.out.println("hql------");

return this.searchPaginated(hql, offset, pagesize);

}

注意:前台显示时:

第一个表用${p[0].identifier },第二个显示用${p[1].属性 }

(2)(3)(4)(5)(6)类似

(五)登录验证

(1)Action

int i=smallTownsManager.yanzheng(smalltownspsw);

System.out.println(i);

if(i==1){

return "pageJumpacok";

}

else{return "";}

}

(2)impi

String[] b=new String[]{smalltownspsw.getUsersName(),smalltownspsw.getUsersPassword()};

List a=super.getHibernateTemplate()

.find("from Smalltownspsw t WHERE t.usersName=? and usersPassword=?"

,b);

if(a.size()>0){

System.out.println("登录");

return 1;

}else{

System.out.println("错误");

return 0;

}

(3)接口

public int yanzheng(Smalltownspsw smalltownspsw);

(六)根据id查询值

类似上面,注意:

(1)接口

public PagerModel xiangxirealize(int offset, int pagesize,String sid);

(2)Action

public String xiangqing(){

System.out.println(1);

HttpServletRequest request=ServletActionContext.getRequest();

String sid=(String)request.getParameter("id");

System.out.println("sid值为"+sid);

int offset = 0;

try {

offset = Integer.parseInt(ServletActionContext.getRequest()

.getParameter("pager.offset"));

} catch (RuntimeException e) {

System.out.println("异常");

}

int pagesize = 10;

System.out.println(" 火1");

pm = smallTownsManager.xiangxirealize(offset, pagesize,sid);

System.out.println(" 火2");

ServletActionContext.getRequest().setAttribute("pm", pm);

System.out.println(" 火3");

return "xiangqingok";

}

(3)impI

@Override

public PagerModel xiangxirealize(int offset, int pagesize,String sid) {

System.out.println("详细信息");

System.out.println("乡镇点击接收任务,查询显示的impI");

String hql="from Goods a where a.id="+sid;

return this.searchPaginated(hql, offset, pagesize);

}

(六)条件查询

(1)jsp:

供货人身份证:

查询

(2)js

function condition(){

alert("条件查询456");

var v = $("#address").val();

alert(v);

var a=1;

$.ajax({

async: false,

type: "post",

data:"v="+v,

url: "<%=path%>/smallTowns_sp/conditionSelect.action",

success: function(data){

alert("456");

$("#view")[0].innerHTML=data;

}

});

}

(3)action

//条件查询功能 conditionSelectAc

public String conditionSelectAc(){

int rid=Integer.parseInt(ServletActionContext.getRequest().getSession().getAttribute("rid").toString());

System.out.println("进入条件查询action");

HttpServletRequest request=ServletActionContext.getRequest();

String aa=(String)request.getParameter("v");

System.out.println("值");

System.out.println(rid);

int offset = 0;

try {

offset = Integer.parseInt(ServletActionContext.getRequest()

.getParameter("pager.offset"));

} catch (RuntimeException e) {

System.out.println("异常");

}

int pagesize = 10;

System.out.println(" 火1");

pm = smallTownsManager.conditionalInterface(offset, pagesize,aa);

System.out.println(" 火2");

ServletActionContext.getRequest().setAttribute("pm", pm);

System.out.println(" 火3");

return "conditionSelectAcok";

}

(4)

/**

* 条件查询,查询村级商品

* */

@Override

public PagerModel conditionalInterface(int offset, int pagesize ,String aa) {

System.out.println("进入impl");

String hql = "from Goods g where g.sfzheng like :sfzheng";

String countHql = "select count(*) " + hql;

Query query = this.getSession().createQuery(countHql);

query = query.setParameter("sfzheng", "%"+aa+"%");

inttotal = ((Long)query.uniqueResult()).intValue();

query = this.getSession().createQuery(hql);

query = query.setParameter("sfzheng", "%"+aa+"%");

query.setFirstResult(offset);//设置查询返回记录的开始位置

query.setMaxResults(pagesize);//返回记录每页显示的条数上限

List<?> list = query.list();

PagerModel pm = new PagerModel();

pm.setList(list);

pm.setTotal(total);

return pm;

}

--------------------------------------------------------------------------------------------------------------------------

(1)eclipse安装svn的教程:

http://jingyan.baidu.com/article/63f236280a37680208ab3db7.html

(2)前台css的图片相对路径加载

background: url(../../img/hcfimg/bg1.png) no-repeat center center fixed;

第一个../ 是项目名字

第二个../是WebContent文件夹

--------------------------------------------------------------------------------------------------------------------------

http://blog.csdn.net/seng3018/article/details/6824905

这个路径是ssh中:

如何访问数据库?我们有两个选择:

getSession().createQuery("from Users");

getHibernateTemplate().find( "FROM Users);

--------------------------------------------------------------------------------------------------------------------------

http://www.cnblogs.com/tuhooo/p/6491906.html

ssh的整合简介

--------------------------------------------------------------------------------------------------------------------------

http://blog.csdn.net/key0323/article/details/50773499

struts的简单配置网址,初级很实用

自己总结struts框架简单搭建步骤

1:首先修改web.xml文件,加载

struts2

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

filter>

< filter-mapping>

struts2

/*

filter-mapping>

通过这段代码进入struts.xml

2.然后通过struts.xml进入action,

01.

02.

03.

04. /first.jsp

05.

06.

07.

注意:标签里写的是action的名字

标签里写的是处理过后返回的页面,这里没有写result的name属性,默认为success也就是处理成功返回的页面,关于Action中自带的5中状态,这里不再多讲。

--------------------------------------------------------------------------------------------------------------------------

String hql="select g,c.cname from Goods g,Category c where c.id=g.cid";

前台接收时,如果想要接收c.cname

用${p[1]},而不是${[1].cname}等什么的

--------------------------------------------------------------------------------------------------------------------------通过onclick的点击进入ajax或js事件得到

里面的值,放入ajax,js中

οnclick="xiangqing(${p[0].id })

//详细信息xiangqing

function xiangqing(id){

alert(id);

alert("详细信息");

//var v = $("#address").val();

var vv=$("#sid").val();

alert(vv);

var v=document.getElementById("sid").innerText;

alert(v);

var a=1;

$.ajax({

async: false,

type: "post",

data:"a="+a,

url: "<%=path%>/smallTowns_sp/xiangqing.action?id="+id,

success: function(data){

alert("123");

$("#view")[0].innerHTML=data;

}

});

}

--------------------------------------------------------------------------------------------------------------------------(1)data传值

data:{"v":v,"v1":v1},

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

(1)B/S与C/S大致区别

https://jingyan.baidu.com/article/b0b63dbfc9a2874a483070c0.html

(2)

J2EE 动态网站

J2SE java核心基础 CS端

J2ME 手机java端

(3)service和dao层作用

http://blog.csdn.net/Ani521smile/article/details/51460382

(4)

(1)

String b= ServletActionContext.getRequest().getSession().getAttribute("rid").toString();

(2)

从他们的返回类型基本可以看出它们之间的区别

execute返回boolean类型,查询结果是resultset且有值则返回true,其他都返回false

executeQuery返回结果集ResultSet。主要针对查询语句,返回查询结果

executeUpdate返回int类型。更新、删除等操作影响的数目

(3)连接本机

--------------------------------------------------------------------------------------------------------------------------

(1)

js的encodeURI() 函数运用

http://www.w3school.com.cn/jsref/jsref_encodeuri.asp

(2)json基本教程演示,json菜鸟教程

http://www.runoob.com/json/json-syntax.html

(3):json转换

http://ouapi.com/tool/json

-------------------------------------------------------------------------------------------------------------------------

hbm.xml中的name是实体类里面的值

-------------------------------------------------------------------------------------------------------------------------网络学习2017/8/14

(1)什么是EJB,服务器集群,都是干嘛的?

黄超凡总结:EJB就是在本机依靠RMI进行通信,调用写在服务器的类。

服务器集群,就是一个软件的几个类调用多个服务器中的类,分担主服务器压力。

(2)如何给文件夹加密,方法(1),通过右键然后有个添加密码

注意点1:Query转int类型,如下:

String hql="select f.weight from Farmuserscai f where f.yhid="+yhid+" and f.caiid="+caiid;

Query query = this.getSession().createQuery(hql);

return ((Integer)query.uniqueResult()).intValue();

注意点2:Gson转String类型的json数据,这个主要可以转换一个实体类

String hql = "from Farmdt ft order by ft.dttime desc";

List selectList = (List) sharedFarmUsersManager.selectList(hql , values);

Gson gson = new Gson();

String json = gson.toJson(selectList);

out.println(json);

注意点3:使用JSONArray和JSONObject转换数据,这个转换多个类

JSONArray jsonArray=new JSONArray();

if(list!=null&&list!=""){

for(int i=0;i

Object[] obj = list.get(i);

JSONObject da = new JSONObject();

da.put("ncname",obj[0]);

da.put("dpname",obj[1]);

}

jsonArray.add(da);

}

String data = jsonArray.toString();

out.print(data);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值