context

解决运行mybatis-generator生成java.sql.SQLException: Cannot connect to database (possibly bad driver/URL co

爱⌒轻易说出口 提交于 2020-02-08 01:33:27
一、异常描述 在eclipse中通过mybatis-generator生成dao、mappers及model代码时(步骤参考“通过mybatis-generator-core工具自…”页面),报“java.sql.SQLException: Cannot connect to database (possibly bad driver/URL combination)”异常,错误轨迹如下 java.sql.SQLException: Cannot connect to database (possibly bad driver/URL combination) at org.mybatis.generator.internal.db.ConnectionFactory.getConnection(ConnectionFactory.java:71) at org.mybatis.generator.config.Context.getConnection(Context.java:498) at org.mybatis.generator.config.Context.introspectTables(Context.java:408) at org.mybatis.generator.api.MyBatisGenerator.generate(MyBatisGenerator

策略模式

不问归期 提交于 2020-02-08 01:12:44
一、概念 策略模式(Strategy): 它定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法的变化不会影响到使用算法的客户。(原文:The Strategy Pattern defines a family of algorithms,encapsulates each one,and makes them interchangeable. Strategy lets the algorithm vary independently from clients that use it.) 图1 策略模式类图  优点:   1、 简化了单元测试,因为每个算法都有自己的类,可以通过自己的接口单独测试。   2、 避免程序中使用多重条件转移语句,使系统更灵活,并易于扩展。 3、 遵守大部分GRASP原则和常用设计原则,高内聚、低偶合。   缺点:   1、 因为每个具体策略类都会产生一个新类,所以会增加系统需要维护的类的数量。 2、 在基本的策略模式中,选择所用具体实现的职责由客户端对象承担,并转给策略模式的Context对象。(这本身没有解除客户端需要选择判断的压力,而策略模式与简单工厂模式结合后,选择具体实现的职责也可以由Context来承担,这就最大化的减轻了客户端的压力。) 参考阅读: 1. 2. 二、我的理解 其实这个策略模式和简单工厂模式一样

策略模式

混江龙づ霸主 提交于 2020-02-08 01:05:42
转自:http: //www.cnblogs.com/colinsong/archive/2009/03/02/1401723.html —————————————————————————————————————————————— 一、概念 策略模式(Strategy): 它定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法的变化不会影响到使用算法的客户。(原文:The Strategy Pattern defines a family of algorithms,encapsulates each one,and makes them interchangeable. Strategy lets the algorithm vary independently from clients that use it.) 图1 策略模式类图  优点:   1、 简化了单元测试,因为每个算法都有自己的类,可以通过自己的接口单独测试。   2、 避免程序中使用多重条件转移语句,使系统更灵活,并易于扩展。 3、 遵守大部分GRASP原则和常用设计原则,高内聚、低偶合。   缺点:   1、 因为每个具体策略类都会产生一个新类,所以会增加系统需要维护的类的数量。 2、 在基本的策略模式中,选择所用具体实现的职责由客户端对象承担,并转给策略模式的Context对象

2.EF Core添加数据库配置的几种方式

Deadly 提交于 2020-02-07 20:04:25
一、OnConfiguring:重写OnConfiguring方法添加配置信息 public class BloggingContext: DbContext { /// <summary> /// 配置数据连接信息 /// </summary> /// <param name="optionsBuilder"></param> protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseMySql("数据库连接字符串"); base.OnConfiguring(optionsBuilder); } } 二、构造函数参数方式配置   a.生成DbContextOptions   b.传入构造函数参数 var optionsBuilder = new DbContextOptionsBuilder<BloggingContext>(); optionsBuilder.UseMySql("数据库连接字符串"); using (BloggingContext db=new BloggingContext(optionsBuilder.Options)) {   return db.Blogs; } 三、容器添加方式 1、添加操作数据库上下文的构造函数

.net基础-图片文件

有些话、适合烂在心里 提交于 2020-02-07 11:34:52
·获取上传图片、重命名、创建文件夹保存图片 ·获取上传图片及图片信息: HttpPostedFile file = context.Request.Files[0]; //获取上传的文件 string fileName = Path.GetFileName(file.FileName); //获取上传文件的名称, 包含扩展名 string fileExt = Path.GetExtension(fileName); //获取用户上传的文件扩展名 string newfileName = Guid.NewGuid().ToString(); //文件重命名 string dir = "/ImageUpload/" + DateTime.Now.Year + "/" + DateTime.Now.Month + "/" + DateTime.Now.Day + "/"; //通过日期将上传文件放在不同目录下 //创建文件夹,判断文件夹是否存在,不存在则创建 if (!Directory.Exists(context.Request.MapPath(dir))) { Directory.CreateDirectory(context.Request.MapPath(dir)); //创建文件夹 } file.SaveAs(context.Request.MapPath(fullDir))

Spring基于注解的Ioc配置

大城市里の小女人 提交于 2020-02-07 11:28:20
首先需要建立的认知是: 注解配置 和 XML配置 要实现的功能 (都是为了降低程序间的耦合) 都是一样的,只是形式上的区别。 不管是XML配置还是注解配置都需要Sping的jar包的支持,所以开始之前都需要导入jar包 <!--Spring开发包--> < dependency > < groupId > org.springframework </ groupId > < artifactId > spring-context </ artifactId > < version > 5.2.1.RELEASE </ version > </ dependency > 编写业务层,以及添加注解 /** * 账户业务层接口 */ public interface AccountService { /** * 保存账户 */ void saveAccount ( ) ; } /** * 账户的业务层实现类 */ @Component ( value = "accountService" ) public class AccountServiceImpl implements AccountService { public void saveAccount ( ) { System . out . println ( "调用了业务层方法......" ) ; } } 注解 功能

flutter详解路由栈(二)

£可爱£侵袭症+ 提交于 2020-02-07 04:37:56
前面,我们已经知道如何简单在路由栈中 push、pop 实例,然而,当遇到一些特殊的情况,这显然不能满足需求。学习 Android 的同学知道 Activity 的各种启动模式可以完成相应需求,Flutter 当然也有类似的可以解决各种业务需求的实现方式! 请看下面使用方法与案例分析。 1.1 pushReplacementNamed 与 popAndPushNamed RaisedButton( onPressed: () { Navigator.pushReplacementNamed(context, "/screen4"); }, child: Text("pushReplacementNamed"), ), RaisedButton( onPressed: () { Navigator.popAndPushNamed(context, "/screen4"); }, child: Text("popAndPushNamed"), ), 我们在 Screen3 页面使用 pushReplacementNamed 与 popAndPushNamed 方法 push 了 Screen4。 此时路由栈情况如下: Screen4 代替了 Screen3 。 pushReplacementNamed 与 popAndPushNamed 的区别在于: popAndPushNamed

Flutter路由管理

会有一股神秘感。 提交于 2020-02-07 04:37:00
第一点:push使用 1.pushNamed——Navigator.of(context).pushNamed('routeName'); 此种方法只是简单的将我们需要进入的页面push到栈顶,以此来显示当前页面,其参数是一个字符串类型,传入的是页面对应的路由名称 该路由名称需要在程序主入口中进行定义。定义方法为: void main() { runApp( new MaterialApp( home: new Screen1(), routes: <String, WidgetBuilder> { '/screen1': (BuildContext context) => new Screen1(), '/screen2' : (BuildContext context) => new Screen2(), '/screen3' : (BuildContext context) => new Screen3(), }, ) ); } 使用:Navigator.of(context).pushNamed('/screen1'); 直接进入screen1页面(每次都将新建一个新的页面) 2.1 pushReplacementNamed——Navigator.of(context).pushReplacementNamed('/screen4');

6.2.初识Flutter应用之路由管理

别等时光非礼了梦想. 提交于 2020-02-07 04:35:56
路由管理 路由(Route)在移动开发中通常指页面(Page),这跟web开发中单页应用的Route概念意义是相同的,Route在Android中通常指一个Activity,在iOS中指一个ViewController。所谓路由管理,就是管理页面之间如何跳转,通常也可被称为导航管理。这和原生开发类似,无论是Android还是iOS,导航管理都会维护一个路由栈,路由入栈(push)操作对应打开一个新页面,路由出栈(pop)操作对应页面关闭操作,而路由管理主要是指如何来管理路由栈。 我们在上一节“计数器”示例的基础上,做如下修改: 1.创建一个新路由,命名“SecondPageRoute” class SecondPageRoute extends StatelessWidget { final Topic = Text("【全栈编程】- onajax.com"); @override Widget build(BuildContext context) { // TODO: implement build return Scaffold( appBar: AppBar( title: Text("【全栈编程】- onajax.com"), ), body: Center( child: Text("这是第二个路由页面"), ), ); } }

04-路由管理

*爱你&永不变心* 提交于 2020-02-07 04:35:07
路由管理 路由(Route)在移动开发中通常指页面(Page),这跟web开发中单页应用的Route概念意义是相同的,Route在Android中通常指一个Activity,在iOS中指一个ViewController。所谓路由管理,就是管理页面之间如何跳转,通常也可被称为导航管理。无论是Android还是iOS,导航管理都会维护一个路由栈,路由入栈(push)操作对应打开一个新页面,路由出栈(pop)操作对应页面关闭操作,而路由管理主要是指如何来管理路由栈。 MaterialPageRoute MaterialPageRoute继承自PageRoute类,PageRoute类是一个抽象类,表示占有整个屏幕空间的一个模态路由页面,它还定义了路由构建及切换时过渡动画的相关接口及属性。MaterialPageRoute 是Material组件库的一个Widget。 下面我们介绍一下MaterialPageRoute 构造函数的各个参数的意义: MaterialPageRoute({ WidgetBuilder builder, RouteSettings settings, bool maintainState = true, bool fullscreenDialog = false, }) builder 是一个WidgetBuilder类型的回调函数