数据库有外键 插入数据

cdsn09 2009-08-04 04:04:01
mysql数据库。
要向数据库中插入一个博客(有id,title,content,category_id)这个id是自增主键,category_id是外键。另外有个博客类型的表(id,name)id是主键。
现在用户写博客时提交的表单中有博客的title,content,和博客类型的name,问题是如何根据name来获得需要插入的category_id??
我用的是ssh框架。提交表单时,难道要在setCategory_id()里连接数据库到博客类型表查出这个id赋值给category_id???让我在setter里写连接数据库的东西,恐怕这样hibernate要不高兴了吧?因为它就是负责搞数据库的。
请问hibernate相应的处理机制是什么??
...全文
314 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjqqk 2009-08-04
  • 打赏
  • 举报
回复
提交表单的时候,何不把博客类型的Id作为隐藏域一并提交呢?
huangan0301 2009-08-04
  • 打赏
  • 举报
回复
帮顶~
zl3450341 2009-08-04
  • 打赏
  • 举报
回复
hibernate关联啊
sangshusen_1988 2009-08-04
  • 打赏
  • 举报
回复
如果做了关联的话,直接setCategory对象就可以啦
Ami121 2009-08-04
  • 打赏
  • 举报
回复
下拉列表
<select name="sele" >
<option value="1">老虎</option>
<option value="2">狮子</option>
<option value="3">大象</option>
</select>
这样提交到后台就可以了 得到的值是 1,2,3
<input type="hidden" name="ss" value="aaa"/>
将变量ss 最为一个隐藏值传到后台
String ss=(String)request.getParameter("ss");

cdsn09 2009-08-04
  • 打赏
  • 举报
回复
补充一个问题,如何用struts2标签提交一个下拉列表,比如列表里面有三个选项:老虎,狮子,大象。但是得到的是这三个选项对应的编号,比如老虎对应1,狮子对应2,大象对应3,我提交的是1或2或3。如何实现?
用struts2标签怎么提交一个变量的值。比如我有一个String ss;ss的值不知道,如何将通过ss把ss的值提交。或者直接一点提交当前时间怎么实现??
分可以看情况再加。
gukuitian 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 cdsn09 的回复:]
引用 10 楼 gukuitian 的回复:
用struts2标签提交什么叫用标签提交?
难道是 <struct:form>?不是一样吗

就是 <s:form>这里怎么写下拉框? </s:form>
[/Quote]

<s:select name="geElement.childType" list="childTypeList" listKey="key"
listValue="value" />

html也是一样 的<select></select>
guanwei10 2009-08-04
  • 打赏
  • 举报
回复
hibernate一关联,lazy设置一下
cdsn09 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 gukuitian 的回复:]
用struts2标签提交什么叫用标签提交?
难道是 <struct:form>?不是一样吗
[/Quote]
就是<s:form>这里怎么写下拉框?</s:form>
cdsn09 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 yjqqk 的回复:]
提交表单的时候,何不把博客类型的Id作为隐藏域一并提交呢?
[/Quote]是可以一并提交,但是这个id是随用户更改博客类型不断变化的。这样程序不是要改了。。否则用户改过博客类型,接着发布这个类型的博客就要报错了。
gukuitian 2009-08-04
  • 打赏
  • 举报
回复
用struts2标签提交什么叫用标签提交?
难道是<struct:form>?不是一样吗
cdsn09 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zl3450341 的回复:]
hibernate关联啊
[/Quote]这位姐姐说说怎么关联??数据库中会关联,hibernate中怎么做呢??
cdsn09 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sangshusen_1988 的回复:]
如果做了关联的话,直接setCategory对象就可以啦
[/Quote]我提交的是类型的name怎么setCategory_id呢。根本没有category_id啊。要根据name找到category_id才能set
cdsn09 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ami121 的回复:]
下拉列表
<select name="sele" >
<option value="1">老虎 </option>
<option value="2">狮子 </option>
<option value="3">大象 </option>
</select>
这样提交到后台就可以了 得到的值是 1,2,3
<input type="hidden" name="ss" value="aaa"/>
将变量ss 最为一个隐藏值传到后台
String ss=(String)request.getParameter("ss");


[/Quote]
这里这个ss的值是不知道是“aaa”的。这么提交得到的是aaa,但是我不知道它值是多少的时候呢??注意是用struts2标签提交

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧