实体类

仓储模式还适用于EF Core吗?

倾然丶 夕夏残阳落幕 提交于 2019-11-29 06:40:06
EF Core已经出2.1版,开始考虑使用据传性能调优已经接近C++的.Net Core写新项目。想要抛弃以前使用asp.net那种sql脚本的码代码方式。同时找了一些开源的项目,比如ABP,SimpleCommerce。 其中ABP项目大而全,封装了很多模式,但文档更多是描述如何使用,如果自己不去看代码很容易不知所云。ABP项目基于Ioc( castle windsor )的动态代理特性实现了及其灵活的模块化方案,可以在运行过程中加载项目并初始化。同时ABP封装了自身的UnitofWork方式,结合了IoC框架太多特性 ( castle windsor )。 比如使用了该框架动态代理的实现,在业务执行之前插入UnitofWork相关逻辑。 而SimpleCommerce则利用了AutoFac以及asp.netcore的特性实现了模块化。对于仓储模式涉及的比较少。对于项目解耦可以说是一个简单的示例。 那么究竟要怎么开始EFCore项目?近期看到一篇,比较实用简单。 不,仓储或者说unit-of-work模式(简称 Rep/UoW)不再使用于EF Core。EF Core 已经实现了Rep/UoW模式,因此在ef core之上再抽象一层Rep/UoW模式,并无帮助。 比较明智的选择是直接使用EF Core,这样你可以使用EF Core 的全部功能,以实现高性能的数据库访问。

接口中的xml报文和实体类的之间转换

a 夏天 提交于 2019-11-29 06:23:14
需求:湖 南 保 险行业意健险 承 保风险预警平台 数据接口 平台提供 HTTPServlet服务,接受保险公司的数据请求,并在处理后返回给保险公司相应的处理结果。 数据接口格式为 XML数据报文, 在每次接口的交易中,都包含了请求的 XML数据与平台返回的XML数据。 直接操作xml格式的报文是不太方便的,最好是将xml格式的报文转换成对应的实体类,再进行操作会变得清晰方便许多。 接下来的代码是xml和实体类之间的相互转化。 1 package com.sinosoft.serviceclient.bj; 2 3 import com.sinosoft.lis.pubfun.PubFun; 4 import com.sinosoft.serviceclient.ServiceClient; 5 import com.sinosoft.tech.log.Logger; 6 import com.sinosoft.tech.log.LoggerFactory; 7 import com.sinosoft.tools.xmltools.framework.XmlConvertor; 8 import com.sinosoft.utility.SSRS; 9 import com.sinosoft.webservice.DTO.hnRiskWarning.contUpload

SpringMVC学习(二)

时光怂恿深爱的人放手 提交于 2019-11-29 05:16:24
大纲 1 接受的参数为日期类型 2 controller 进行数据保存 3 Controller 如何进行重定向跳转 4 静态资源的映射 5 Springmvc 完成 ajax 功能。 (jquery. $) 6 Springmvc 完成 ajax 功能,controller类返回的数据类型为String且为汉字时出现乱码 1 接收的参数为日期类型时 1.1新建动态web工程 1.2导入springmvc相关jar包 1.3配置web.xml文件(已经安装了插件,使用插件加载后再修改相关参数,快捷键:Alt+/) *修改如下地方 1.4创建Spring Bean Configuration File文件,配置springmvc配置文件(创建的xml文件名需要与web.xml中classpath后的文件名对照) *使用插件引入jar包路径 *添加包扫描、开启驱动、视图解析器 1.5在WEB-INF目录下新建view文件夹,添加index.jsp文件 *注意:WEB-INF下的资源,无法通过浏览器直接访问也不能通过重定向访问,只能通过请求转发访问 1.6以User为例在controller包下,创建UserController类,添加相关方法,该方法接收的参数为单参,返回类型为String,参数为Date类型,或者该方法接收的参数为User实体类 way1:使用

[开源] FreeSql.AdminLTE 功能升级

此生再无相见时 提交于 2019-11-29 03:43:21
前言 FreeSql 发布至今已经有9个月,功能渐渐完善,自身的生态也逐步形成,早在几个月前写过一篇文章 《ORM 开发环境之利器:MVC 中间件 FreeSql.AdminLTE》 ,您可以先阅读上一篇文章内容了解来龙去脉,再回到这里观看。 我个人非常喜欢小规模团队的"单打独斗",有的时候即使在大公司,也是做着3-5个人团队的小项目,相信不少人有类似的经历。 从上一篇文章可以看出,早先的 FreeSql.AdminLTE 只不过是花瓶,应用场景非常有限,仅仅在开发环境时管理测试数据的用途,这之后的几个月其实我基本没使用它。。。是不是很尴尬?? 本次功能升级情况有所改观,且先看完本文内容。 我喜欢已有的管理功能,希望可以在默认产生的功能上进行二次开发; 我喜欢尽量简单,容易上手,二次开发难度别要太大。 说到开源还是先贴上源码仓库吧: https://github.com/2881099/FreeSql.AdminLTE ,主项目 FreeSql 目前有900多星,欢迎同时给赞,谢谢! 项目背景 对于通用后台管理系统的生成,除了单纯的对单表 crud 操作外,我还喜欢有外键的操作,比如: 1、Song、Tag 多对多场景,添加/更新 Song 时可以把 Tag 一起保存; 2、列表页,希望外键、多对多出现在过滤筛选条件; 3、列表页,希望枚举出现在过滤筛选条件;

Intellij IDEA 从Git 中clone代码,之后出现错误,如何操作?

心已入冬 提交于 2019-11-29 03:40:09
step1: 在操作界面右上角有一个 setup ,点击 确定. step2 :在项目下的 在项目下的 pom.xml 点击右键 add as maven ; step3: 在项目下的 pom.xml 最后一项点击右键 add as an build file 注意: 如果代码出现红色,实体类点击不可以; 原因可能为有多个pom.xml文件,导致冲突,可以删除一个文件 来源: CSDN 作者: qq_34899538 链接: https://blog.csdn.net/qq_34899538/article/details/80277457

用实体类接收

别等时光非礼了梦想. 提交于 2019-11-29 03:20:51
@RequestMapping("/saveorupdatebasegoodinfo") @ResponseBody public JSONResponse saveOrUpdateBaseGoodinfo(@RequestBody Map<String,Object>map,HttpServletRequest request) { JSONResponse jsonResponse=new JSONResponse(); HttpSession session=request.getSession(false); if(session==null) { throw new RuntimeException("session已经超时!"); } Map<String,Object>firstMap=(Map<String, Object>) session.getAttribute("map"); firstMap.putAll(map); GoodsBaseInfo goodsBaseInfo=new GoodsBaseInfo(); MapUtils.mapToJavaBean(goodsBaseInfo,GoodsBaseInfo.class,firstMap); GoodsBaseInfoVO goodsBaseInfoVO=new GoodsBaseInfoVO();

实现联表查询

情到浓时终转凉″ 提交于 2019-11-29 02:30:27
一、一对一关联 1.在数据库中创建班级表和老师表 CREATE TABLE teacher( t_id INT PRIMARY KEY AUTO_INCREMENT, t_name VARCHAR(20) ); CREATE TABLE class( c_id INT PRIMARY KEY AUTO_INCREMENT, c_name VARCHAR(20), teacher_id INT ); ALTER TABLE class ADD CONSTRAINT fk_teacher_id FOREIGN KEY (teacher_id) REFERENCES teacher(t_id); INSERT INTO teacher(t_name) VALUES('LS1'); INSERT INTO teacher(t_name) VALUES('LS2'); INSERT INTO class(c_name, teacher_id) VALUES('bj_a', 1); INSERT INTO class(c_name, teacher_id) VALUES('bj_b', 2); 2.创建相应的实体类Classes和Teacher 3.配置映射文件ClassesMapper.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE

解决字段名与实体类属性名冲突

陌路散爱 提交于 2019-11-29 02:30:21
1.在查询时给字段起别名,让别名和实体类属性名一样 <!-- 通过id查询 --> <select id="selectById" parameterType="int" resultType="com.zhiyou100.kfs.bean.Users"> select id as uid,name uname,age uage from users where id=#{id} </select> 2.通过mybatis的resultMap标签设置对应关系 <select id="selectById" parameterType="int" resultMap="myMap"> select id,name,age from users where id=#{id} </select> <resultMap type="com.zhiyou100.kfs.bean.Users" id="myMap"> <id column="id" property="uid"/> <result column="name" property="uname"/> <result column="age" property="uage"/> </resultMap> 来源: https://www.cnblogs.com/kfsrex/p/11439611.html

jpa01

烂漫一生 提交于 2019-11-29 01:59:48
JPA Java Persistence API, 即Java 持久化API JPA规范本质上就是一种ORM规范,提供了一些编程的API接口,但具体实现则由服务厂商来提供实现。 入门案例 1.创建maven ,导入坐标 2.配置jpa的核心配置文件,创建在META-INFO目录下,persistence.xml 3.编写客户实体类 4.配置实体类和表 5.保存 pom.xml 1 <properties> 2 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 3 <project.hibernate.version>5.0.7.Final</project.hibernate.version> 4 </properties> 5 6 <dependencies> 7 <!-- junit --> 8 <dependency> 9 <groupId>junit</groupId> 10 <artifactId>junit</artifactId> 11 <version>4.12</version> 12 <scope>test</scope> 13 </dependency> 14 15 <!-- hibernate对jpa的支持包 --> 16 <dependency> 17 <groupId

Mybatis框架

谁说我不能喝 提交于 2019-11-29 01:47:41
加入Mybatis相应的架包并解压 创建bean包,在bean包下创建数据库相对应的实体类(创建get、set) 创建dao包,在dao包下创建接口实体类的操作方法 创建resources文件夹,在该文件夹下创建Mybatis的配置文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 3 "http://mybatis.org/dtd/mybatis-3-config.dtd"> 4 <!-- 数据源的信息:数据库的信息。 --> 5 <configuration> 6 <environments default="development"> 7 <environment id="development"> 8 <transactionManager type="JDBC" /> 9 <dataSource type="POOLED"> 10 <property name="driver" value="com.mysql.jdbc.Driver" /> 11 <property name="url" value="jdbc:mysql://localhost:3306/mybatis" /> 12