Yii2-常用应用配置

基础版配置 web.php
高级版配置 main.php

1. 资源 装配

  /assets/AppAsset.php

2.入口index.php配置 

  /web/index.php配置
  defined('YII_DEBUG') or define('YII_DEBUG', false);      //debug mode: true
  defined('YII_ENV') or define('YII_ENV', 'prod');         //debug mode: dev

3.  配置数据库

    3.1系统默认配置

   /config/db.php
   return [
        'class' => 'yii\db\Connection',
        'dsn' => 'mysql:host=localhost;dbname=yii2basic',
        'username' => 'root',
        'password' => '',
        'charset' => 'utf8',
    ];




 3.2常用数据库配置

      /config/db.php
   return [
        'class' => 'yii\db\Connection',
        //'dsn' => 'mssql:host=localhost;dbname=shop_obd2', // MySQL, MariaDB
        //'dsn' => 'sqlite:/path/to/database/file', // SQLite
        //'dsn' => 'pgsql:host=localhost;port=5432;dbname=mydatabase', // PostgreSQL
        //'dsn' => 'cubrid:dbname=demodb;host=localhost;port=33000', // CUBRID
        'dsn' => 'sqlsrv:Server=184.168.194.53;Database=xms_mbstarshop', // MS SQL Server, sqlsrv driver
        //'dsn' => 'dblib:host=localhost;dbname=mydatabase', // MS SQL Server, dblib driver
        //'dsn' => 'mssql:host=localhost;dbname=Sql_CarSets_co_uk', // MS SQL Server, mssql driver
        //'dsn' => 'oci:dbname=//localhost:1521/mydatabase', // Oracle
       
        'username' => 'xmu_mbstarshop',
        'password' => ' ',
        'charset' => 'utf8',
        //'tablePrefix' => 'tb_',
    ];




4.WEB应用配置config/web.php

   4.1 别名配置


    'aliases' => [
       '@name1' => 'path/to/path1',        // @xxx 表示别名
       '@name2' => 'path/to/path2',
     ],

 4.2 修改布局模板

   --- 框架默认定义 ---


   yii2/base/application.php
         public $layout = 'main';

           --- 自定义配置 ---


            /config/web.php
            'layout' => 'main',
    4.3 修改默认路由

  --- 框架默认路由 ---

        yii2/web/application.php
        public $defaultRoute = 'site';

        --- 自定义修改路由 ---

        /config/web.php
        'defaultRoute' => 'index',

  4.4 配置路由 ( 配置reUrl, 和  /config/web.php 只能二选一,否则其中一个不工作)


     4.4.1 /config/web.php配置

  'urlManager' => [
            'showScriptName' => false,   // Disable index.php
            'enablePrettyUrl' => true,   // Disable r= routes
            'enableStrictParsing' => false,
            'rules'=>array(
                [
                'pattern' => 'test/about',
                'route' => 'site/about',
                //'suffix' => '.do',
                ],
                'wholesale/'=>'site/', <br>             '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>', <br>             '<controller:\w+>/<action:\w+>'=>'<controller>/<action>', <br>              ), <br>             <br>         ], </div> <div> <br> </div> <div> <br>   4.4.2  在/web/.htaccess </div> <div> <br> </div> <div>       Options FollowSymLinks <br>       RewriteEngine on <br>       RewriteRule test/abc.do$ index.php?r=/site/contact [L] <br>       RewriteCond %{REQUEST_FILENAME} !-f <br>       RewriteRule !\.(js|ico|txt|gif|jpg|png|css|html|xml)$ /index.php <br>       Options -Indexes </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br>   4.5 设置Cookie加密key </div> <div> <br> </div> <div>          /config/web.php <br>          'components' => [ <br>              'request' => [ <br>                 // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation <br>                 'cookieValidationKey' => 'life2015', <br>              ], </div> <div> <br> </div> <div>          ], </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br>   </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> 5. 资源装配配置 </div> <div> <br> </div> <div>   5.1 /assets/AppAsset.php <br>     public $css = [ <br>         'css/site.css',        //附加到header <br>     ]; <br>     public $js = [ <br>                     //'test/test1.js',默认应用根目录前缀:/web/  ,附加到footer <br>     ];  </div> <div> <br> </div> <div>   </div> <div> <br> </div> <div>    5.2 --- 在视图脚本中注册,调用 --- </div> <div> <br> </div> <div>     方法一 <br>     AppAsset::register($this);   //调用已资源管理器中已配置的文件 <br>     ?> <br>     <?php $this->beginPage() ?> <br>     <!DOCTYPE html> <br>     <html lang="<?= Yii::$app->language ?>"> <br>         <head> <br>         ... <br>         </head> <br>         <body> <br>         <?php $this->beginBody() ?> <br>         ... </div> <div> <br> </div> <div>         <?php $this->endBody() ?>    <!-- 相当于点位符 --> <br>     </body> <br>     </html> <br>     <?php $this->endPage() ?> </div> <div> <br> </div> <div> <br>     方法二,注册文件 </div> <div> <br> </div> <div> <br>     $this->registerJsFile('abc.js');   //加载在尾部,但在jquery.js之前 <br>     $this->registerJsFile('aaa.js', ['depends' => 'app\assets\AppAsset']);  //加载在jquery.js之后 </div> <div> <br> </div> <div>     方法三,注册 code block </div> <div> <br> </div> <div>     可以直接写脚本,或 </div> <div> <br> </div> <div>       <?php$this->beginBlock('test')?>  </div> <div> <br> </div> <div> $(function($){ </div> <div> <br> </div> <div> $('#mybutton').click(function(){ </div> <div> <br> </div> <div> alert('OK'); </div> <div> <br> </div> <div> }); </div> <div> <br> </div> <div> }); </div> <div> <br> </div> <div> <?php$this->endBlock()?> </div> <div> <br> </div> <div> <?php$this->registerJs($this->blocks['test'], \yii\web\View::POS_END); ?> </div> <div> <br> </div> <div>     $this->registerJs($this->blocks['test']);   //加载在尾部,但在jquery.js之前 <br>     $this->registerJs($this->blocks['test'],  ['depends' => 'app\assets\AppAsset']);  //加载在jquery.js之后 </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> 6. /config/params.php 配置参数: <br>   \Yii::$app->params['recentPosts'] </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> --- 在控制器中修改视图中的 $this->title <br>       \Yii::$app->view->title= 'from controller abc';  </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> <div> <br> </div> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1283233216873906176"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(Yii2)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1943231841335046144.htm" title="java 同步redis到mysql_Yii2 redis同步数据到mysql" target="_blank">java 同步redis到mysql_Yii2 redis同步数据到mysql</a> <span class="text-muted">兰艳知己</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%90%8C%E6%AD%A5redis%E5%88%B0mysql/1.htm">同步redis到mysql</a> <div>将redis数据写入mysql中:本次案例讲解将如何将商城中商品浏览次数通过缓存记录并写入mysql中具体的redis安装过程暂且就省略了.....一、安装redis插件|配置rediscomposerrequireyiisoft/yii2-redis找到common的config文件,在components下加入redis配置参数'redis'=>['class'=>'yii\redis\Con</div> </li> <li><a href="/article/1940572865745186816.htm" title="关于YII2使用mssql/SqlServer的问题" target="_blank">关于YII2使用mssql/SqlServer的问题</a> <span class="text-muted">aisicongg</span> <a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a><a class="tag" taget="_blank" href="/search/SqlServer/1.htm">SqlServer</a> <div>场景:配置了多个db连接,包含mysql和mssql等多个。本人在配置使用mssql的的过程中发现表名和字段名自动转义成`分隔符。例如SELECT`id`,`username`FROM`user`该语句在mssql是无法执行的,因为mssql不支持`分隔符,这个时候你需要在yii2调用的时候指定对应的配置db,比如我的申请了SqlServer是db2,那么我的写法如下:$query->create</div> </li> <li><a href="/article/1940571981644623872.htm" title="用于 Yii 2 的 AuthClient 扩展--安装" target="_blank">用于 Yii 2 的 AuthClient 扩展--安装</a> <span class="text-muted">topofgods</span> <a class="tag" taget="_blank" href="/search/Yii/1.htm">Yii</a> <div>https://github.com/yiisoft/yii2-authclient/blob/master/docs/guide-zh-CN/installation.md安装安装扩展要安装该扩展,请使用Composer。运行composerrequire--prefer-distyiisoft/yii2-authclient"~2.1.0"或在你的composer.json文件的“requir</div> </li> <li><a href="/article/1940571224442728448.htm" title="YII2配置SQLSERVER" target="_blank">YII2配置SQLSERVER</a> <span class="text-muted">大智001</span> <div>php5.3以后,没有对sqlserver的支持的动态链接文件了,要php支持sqlserver。记住下面两个链接:https://github.com/Microsoft/msphpsql1.根据要求下载SRV32.EXE文件。(Php5.5以上的可以安装SQL)https://www.microsoft.com/en-us/download/details.aspx?id=20098将其安装到</div> </li> <li><a href="/article/1940571222916001792.htm" title="Yii2 连接SqlServer(windows)" target="_blank">Yii2 连接SqlServer(windows)</a> <span class="text-muted">aaa阿阿qiu~~</span> <a class="tag" taget="_blank" href="/search/php%E7%8E%AF%E5%A2%83/1.htm">php环境</a><a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/sqlserver/1.htm">sqlserver</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a> <div>最开始的问题:连接mysql没问题,连接sqlserver一直不行,但是在客户端可以连接,说明肯定程序或者是扩展哪里没弄对,就一直报couldnotfinddriver这个错误1、php扩展,可以使用phpinfo()来查看是否成功加载了pdo_sqlsrv模块,没问题扩展下载链接地址:https://docs.microsoft.com/zh-cn/sql/connect/php/release</div> </li> <li><a href="/article/1940427472113823744.htm" title="Yii 2 JQuery UI 扩展使用教程" target="_blank">Yii 2 JQuery UI 扩展使用教程</a> <span class="text-muted">解雁淞</span> <div>Yii2JQueryUI扩展使用教程yii2-juiYii2JQueryUIextension.项目地址:https://gitcode.com/gh_mirrors/yi/yii2-jui项目介绍Yii2JQueryUI扩展是一个为Yii框架2.0提供的扩展,它封装了JQueryUI小部件作为Yii小部件,使得在Yii应用程序中使用JQueryUI小部件变得更加方便。这个扩展由yiisoft开发</div> </li> <li><a href="/article/1935993018385494016.htm" title="YiI2+ecshop phpexcel生成下载excel订单" target="_blank">YiI2+ecshop phpexcel生成下载excel订单</a> <span class="text-muted">PHP(Mr. Hamster)</span> <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/Yii2/1.htm">Yii2</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a><a class="tag" taget="_blank" href="/search/excel/1.htm">excel</a> <div>前端代码注:需引入jquery下载订单document.getElementById('downloadBtn').addEventListener('click',function(event){event.preventDefault();//自定义逻辑例如:发送AJAX请求或显示下载提示constkey_words=$('input[name="key_words"]').val();con</div> </li> <li><a href="/article/1932448039495069696.htm" title="Yii2项目自动向GitLab上报Bug" target="_blank">Yii2项目自动向GitLab上报Bug</a> <span class="text-muted">少湖说</span> <a class="tag" taget="_blank" href="/search/Gitlab-CI%E5%AE%9E%E6%88%98/1.htm">Gitlab-CI实战</a><a class="tag" taget="_blank" href="/search/gitlab/1.htm">gitlab</a><a class="tag" taget="_blank" href="/search/bug/1.htm">bug</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a> <div>Yii2项目自动上报Bug原理yii2在程序报错时,会执行指定action,通过重写ErrorAction,实现Bug自动提交至GitLab的issue步骤配置SiteController中的actions方法publicfunctionactions(){return['error'=>['class'=>'app\helpers\web\ErrorAction',],];}重写ErrorAct</div> </li> <li><a href="/article/1925417896184442880.htm" title="Yii2使用PHPExcel读取excel" target="_blank">Yii2使用PHPExcel读取excel</a> <span class="text-muted">pxy_lele</span> <a class="tag" taget="_blank" href="/search/%E8%BF%9B%E5%87%BB%E7%9A%84%E7%A4%BC%E5%8C%85/1.htm">进击的礼包</a><a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a><a class="tag" taget="_blank" href="/search/excel/1.htm">excel</a> <div>个人使用过程中保存一些使用PHPExcel的经验,以便后来翻阅:与PHP的Yii框架结合,可以轻松使用。而且根本不用网上所说的修改Yii的自动加载文件等方法。具体使用方法:下载phpofficehttp://phpexcel.codeplex.com/releases/view/119187(如果用composer的话,不需要手动下载)下载后首级目录结构是Classes,Documentation</div> </li> <li><a href="/article/1920904506040709120.htm" title="Yii2.0手册地址" target="_blank">Yii2.0手册地址</a> <span class="text-muted">攻城狮joe</span> <a class="tag" taget="_blank" href="/search/LA%28N%29MP/1.htm">LA(N)MP</a><a class="tag" taget="_blank" href="/search/YII2.0/1.htm">YII2.0</a> <div>官网打不开,可以看这里http://yii2.techbrood.com/;跟官网里面文档一样。ps:今天真郁闷,官网都打不开</div> </li> <li><a href="/article/1920422456410042368.htm" title="Yii2.0 用户登录详解(上)" target="_blank">Yii2.0 用户登录详解(上)</a> <span class="text-muted">lhorse003</span> <a class="tag" taget="_blank" href="/search/yii2%E7%99%BB%E9%99%86/1.htm">yii2登陆</a> <div>一、准备在开始编写代码之前,我们需要思考一下:用户登陆模块,实现的是什么功能?很明显,是登陆功能,那么,登陆需要用户名和密码,我们在数据库的一张表中就应该准备好用户名和密码的字段,再思考一下,如果要实现自动登陆的功能,那么还需要什么?Cookie,是专门用于自动登陆的,所以,我们的数据表可能需要准备一个字段,专门用于储存客户端登陆所生成的cookie,这样,就能通过验证客户端和服务端的cookie</div> </li> <li><a href="/article/1903873762076454912.htm" title="PHP框架为基础的购物平台设计思路分步骤说明" target="_blank">PHP框架为基础的购物平台设计思路分步骤说明</a> <span class="text-muted">星糖曙光</span> <a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF%E8%AF%AD%E8%A8%80%EF%BC%88node/1.htm">后端语言(node</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/vue%E7%AD%89%E7%AD%89%EF%BC%89/1.htm">vue等等)</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E8%AF%BE%E7%A8%8B%E8%AE%BE%E8%AE%A1/1.htm">课程设计</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a> <div>以下是以PHP框架为基础的购物平台设计思路分步骤说明:一、技术选型阶段技术栈={后端框架:Laravel/Yii2(提供ORM、路由、中间件支持)前端框架:Vue.js/React(可选SPA方案)数据库:MySQL8.0+(事务型数据存储)缓存:Redis(会话/商品缓存)队列:RabbitMQ(异步处理订单)\text{技术栈}=\begin{cases}后端框架:Laravel/Yii2(提</div> </li> <li><a href="/article/1903851307760939008.htm" title="\yii\queue\LogBehavior::class到底是什么?一共包含哪些部分?" target="_blank">\yii\queue\LogBehavior::class到底是什么?一共包含哪些部分?</a> <span class="text-muted">快点好好学习吧</span> <a class="tag" taget="_blank" href="/search/Yii2.0/1.htm">Yii2.0</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>1.\yii\queue\LogBehavior::class到底是什么?想象一下,你在一家咖啡店:你需要记录每一笔订单的状态(如“已下单”、“正在制作”、“已完成”),以便后续追踪和排查问题。在Yii2的队列系统中,\yii\queue\LogBehavior就像是一个“日志记录员”,用于在队列任务执行的不同阶段记录日志信息。(1)核心概念定义:\yii\queue\LogBehavior是Yi</div> </li> <li><a href="/article/1903851308557856768.htm" title="Yii::$app->queue->push到底如何使用?" target="_blank">Yii::$app->queue->push到底如何使用?</a> <span class="text-muted">快点好好学习吧</span> <a class="tag" taget="_blank" href="/search/Yii2.0/1.htm">Yii2.0</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>1.Yii::$app->queue->push是什么?想象一下,你在一家咖啡店:你需要将每一笔订单(任务)放入“待处理队列”中,由后厨按照顺序处理。在Yii2中,Yii::$app->queue->push就像是这个“放入队列”的操作,用于将任务推送到队列系统中,等待异步处理。(1)核心概念定义:Yii::$app->queue->push是Yii2队列扩展中的一个方法,用于将任务推送到队列中。</div> </li> <li><a href="/article/1885322679309889536.htm" title="php yii 微信支付宝,Yii使用easywechat实现微信支付" target="_blank">php yii 微信支付宝,Yii使用easywechat实现微信支付</a> <span class="text-muted">爱吃生菜的鱼</span> <a class="tag" taget="_blank" href="/search/php/1.htm">php</a><a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E4%BF%A1%E6%94%AF%E4%BB%98%E5%AE%9D/1.htm">微信支付宝</a> <div>您现在的位置是:网站首页>>微信>>微信公众号Yii使用easywechat实现微信支付发布时间:2019-04-3011:43:07作者:wangjian浏览量:1142点赞量:0一:微信公众号申请微信支付申请微信公众号的微信支付申请这里就不进行叙述了二:yii配置支付配置这里我使用的是max-wen/yii2-easy-wechat,所以这里我参考的是3.X版本的文档2:微信支付配置'WECH</div> </li> <li><a href="/article/1828971382990532608.htm" title="yii2自动跳转登陆 ie低版本无效" target="_blank">yii2自动跳转登陆 ie低版本无效</a> <span class="text-muted">飞狐or</span> <a class="tag" taget="_blank" href="/search/ie%E4%BD%8E%E7%89%88%E6%9C%AC%E8%AE%BF%E9%97%AEyii2%E6%A1%86%E6%9E%B6/1.htm">ie低版本访问yii2框架</a><a class="tag" taget="_blank" href="/search/yii2%E5%88%9D%E5%A7%8B%E5%8C%96%E9%85%8D%E7%BD%AE/1.htm">yii2初始化配置</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a><a class="tag" taget="_blank" href="/search/yii2/1.htm">yii2</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a> <div>Yii2ie低版本访问登陆页面报错如图不能自行跳转到登陆界面如图不能自行跳转到登陆界面查找原因Yii2默认验证请求头类型为public$acceptableRedirectTypes=['text/html','application/xhtml+xml'];ie低版本请求头内容类型为'application/x-ms-application'将ie请求类型增加到yii2\web\user.php</div> </li> <li><a href="/article/1826952737271672832.htm" title="yii2 中获取 模块、控制器、方法名的方法" target="_blank">yii2 中获取 模块、控制器、方法名的方法</a> <span class="text-muted">爱好者777</span> <a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a> <div>yii2中获取模块、控制器、方法名的方法在视图中在控制器中在控制器的beforeAction方法中(方法接收$action参数)在视图中模块名:$this->context->module->id;控制器名:$this->context->id;方法名:$this->context->action->id;在控制器中模块名:$this->module->id;控制器名:$this->id;方法名:</div> </li> <li><a href="/article/1768769555607388160.htm" title="Yii实现RabbitMQ队列" target="_blank">Yii实现RabbitMQ队列</a> <span class="text-muted">huaweichenai</span> <a class="tag" taget="_blank" href="/search/rabbitmq/1.htm">rabbitmq</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a><a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a> <div>一:拓展安装composerrequireyiisoft/yii2-queuecomposerrequireenqueue/amqp-lib2:RabbitMQ队列配置在配置文件中配置RabbitMQ队列'components'=>[...'queue'=>['class'=>yii\queue\amqp_interop\Queue::class,'host'=>'192.168.6.88',//</div> </li> <li><a href="/article/1767836290096627712.htm" title="Yii2 数据操作Query Builder" target="_blank">Yii2 数据操作Query Builder</a> <span class="text-muted">强哥83</span> <a class="tag" taget="_blank" href="/search/Yii2/1.htm">Yii2</a> <div>QueryBuilder$rows=(new\yii\db\Query())->select(['dyn_id','dyn_name'])->from('zs_dynasty')->where(['between','dyn_id',1,30])->limit(10)->all();print_r($rows);useyii\db\Query;$query=(newQuery())->from('</div> </li> <li><a href="/article/1756128817321099264.htm" title="Leetcode 154. Find Minimum in Rotated Sorted Array II" target="_blank">Leetcode 154. Find Minimum in Rotated Sorted Array II</a> <span class="text-muted">SnailTyan</span> <div>文章作者:Tyan博客:noahsnail.com|CSDN|1.DescriptionFindMinimuminRotatedSortedArrayII2.SolutionclassSolution{public:intfindMin(vector&nums){intleft=0;intright=nums.size()-1;while(leftnums[left]){left=mid+1;}e</div> </li> <li><a href="/article/1755075433398812672.htm" title="yii2 redis 操作list 移除操作,lrem根据值进行移除" target="_blank">yii2 redis 操作list 移除操作,lrem根据值进行移除</a> <span class="text-muted">程序小院</span> <a class="tag" taget="_blank" href="/search/yii2/1.htm">yii2</a><a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/list/1.htm">list</a><a class="tag" taget="_blank" href="/search/bootstrap/1.htm">bootstrap</a> <div>yii2redis操作list移除操作,lrem根据值进行移除移出并获取列表头部或尾部的第一个元素,如果没有值返回nullYii::$app->redis->lpop($key);Yii::$app->redis->rpop($key);根据值进行移除$len=Yii::$app->redis->LLEN($key);//获取元素个数Yii::$app->redis->lrem($key,$len</div> </li> <li><a href="/article/1755075432329265152.htm" title="yii2 layui文件上传带参数" target="_blank">yii2 layui文件上传带参数</a> <span class="text-muted">程序小院</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/%E6%A8%A1%E7%89%88/1.htm">模版</a><a class="tag" taget="_blank" href="/search/layui/1.htm">layui</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>yii2layui文件上传带参数前端资源文件上传layui.use(['form','layer','upload'],function(){$=layui.jquery;varform=layui.form,layer=layui.layer,upload=layui.upload;upload.render({accept:'file',size:'20480',elem:'#upload-</div> </li> <li><a href="/article/1754801877762981888.htm" title="yii 基于php的Rbac权限控制" target="_blank">yii 基于php的Rbac权限控制</a> <span class="text-muted">fuck_life</span> <a class="tag" taget="_blank" href="/search/Yii/1.htm">Yii</a><a class="tag" taget="_blank" href="/search/Yii/1.htm">Yii</a><a class="tag" taget="_blank" href="/search/RBAC%E6%9D%83%E9%99%90%E6%8E%A7%E5%88%B6/1.htm">RBAC权限控制</a> <div>RBAC,基于角色的访问控制,对RBAC有问题的朋友,可以转移到:基于角色的访问控制RBAC一文,进行了解.Yii2中,实现的是NISTRBAC模型.Yii2中,的RBAC管理,涉及到的内容有:权限,角色,规则,为角色赋予权限,为用户分配角色.我们会以一个案例,贯穿整个RBAC的使用,请继续阅读,和跟随练习,保证可以全面了解Yii2的RBAC机制实现.目标案例准备准备一:控制器中的几个动作方法,完</div> </li> <li><a href="/article/1753598248427208704.htm" title="yii2 redis记录用户行为,list列表 重复过滤,新数据保留最前面" target="_blank">yii2 redis记录用户行为,list列表 重复过滤,新数据保留最前面</a> <span class="text-muted">程序小院</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/list/1.htm">list</a><a class="tag" taget="_blank" href="/search/bootstrap/1.htm">bootstrap</a> <div>yii2redis记录用户行为,list列表重复过滤,新数据保留最前面\Yii::$app->redis->lrem($key,0,json_encode($array,true));\Yii::$app->redis->lpush($key,json_encode($array,true));\Yii::$app->redis->expire($key,2592000);重复数据删除新的数据追加</div> </li> <li><a href="/article/1752898293190377472.htm" title="Yii2之类自动加载" target="_blank">Yii2之类自动加载</a> <span class="text-muted">xiaopzi123123</span> <a class="tag" taget="_blank" href="/search/php/1.htm">php</a> <div>在yii中,程序中需要使用到的类无需事先加载其类文件,在使用的时候才自动定位类文件位置并加载之,这么高效的运行方式得益于yii的类自动加载机制。Yii的类自动加载实际上使用的是PHP的类自动加载,所以先来看看PHP的类自动加载。在PHP中,当程序中使用的类未加载时,在报错之前会先调用魔术方法__autoload(),所以我们可以重写__autoload()方法,定义当一个类找不到的时候怎么去根据类</div> </li> <li><a href="/article/1752831660933529600.htm" title="yii2 mongodb 操作" target="_blank">yii2 mongodb 操作</a> <span class="text-muted">xiaopzi123123</span> <a class="tag" taget="_blank" href="/search/mongodb/1.htm">mongodb</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>->where(['['$in'=>$categoryIdArr]];类似mysqlin操作($categoryIdArr是数组)->where(['label'=>['$regex'=>'赞美诗']])模糊搜索操作$where=['status'=>1,'name'=>['$regex'=>$search]];多个条件查询andWhere()orWhere()查询字段->select(['tit</div> </li> <li><a href="/article/1751765992305868800.htm" title="Yii2.0 视图模版继承与模版相互调用" target="_blank">Yii2.0 视图模版继承与模版相互调用</a> <span class="text-muted">小马儿_</span> <div>模板继承与模板之间的相互调用在控制器中单独定义父模板public$layout='home';publicfunctionactionIndex(){return$this->render('index');}在views文件夹下layouts文件夹写一个home.phpPageTitle我是父模板//通过此方法告诉继承文件的内容放在这里模板相互调用render('test');?></div> </li> <li><a href="/article/1751145882008436736.htm" title="yii2视图渲染和前端请求及后台响应" target="_blank">yii2视图渲染和前端请求及后台响应</a> <span class="text-muted">我的楼兰0909</span> <div>username:">password:request->csrfToken?>">$('.sub').on('click',function(){varjson={};json.username=$('.username').val();json.password=$('.password').val();json._csrf=$('#_csrf').val();$.ajax({url:'/?r</div> </li> <li><a href="/article/1751122987244863488.htm" title="yii2 PHP updateAll()方法和save()方法同时使用对同一个字段更新,出现的异常情况" target="_blank">yii2 PHP updateAll()方法和save()方法同时使用对同一个字段更新,出现的异常情况</a> <span class="text-muted">huazeci</span> <a class="tag" taget="_blank" href="/search/php/1.htm">php</a> <div>1、表结构2、使用updateAll()和save()方法同时对同一条数据进行更新,会出现异常情况【网上说是脏属性导致的】,大家可以自测可以看出如果设置字段的值为字符串值,则不影响最后的结果,但是如果设置的是整数值,则会影响最后想要的结果;避免这种情况出现,可以避免两个方法同时【可以上下都使用save()方法,如下图】3:同时使用save()方法,则不影响最后想要的结果结果:updateAll()</div> </li> <li><a href="/article/1751122859226316800.htm" title="YII2中使用orderby问题" target="_blank">YII2中使用orderby问题</a> <span class="text-muted">huazeci</span> <a class="tag" taget="_blank" href="/search/php%E5%B7%A5%E4%BD%9C/1.htm">php工作</a> <div>$list=$query->orderBy(['spt.create_time'=>SORT_DESC])->offset(($pageNumber-1)*$pageSize)->limit($pageSize)->asArray()->all();实际项目中如果相同值的create_time会有超过limit个数的情况,就会出现每次随机取pageSize个;例如相同值的有15个,但是limit是</div> </li> <li><a href="/article/45.htm" title="安装数据库首次应用" target="_blank">安装数据库首次应用</a> <span class="text-muted">Array_06</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a> <div>可是为什么再一次失败之后就变成直接跳过那个要求 enter full pathname of java.exe的界面 这个java.exe是你的Oracle 11g安装目录中例如:【F:\app\chen\product\11.2.0\dbhome_1\jdk\jre\bin】下的java.exe 。不是你的电脑安装的java jdk下的java.exe! 注意第一次,使用SQL D</div> </li> <li><a href="/article/172.htm" title="Weblogic Server Console密码修改和遗忘解决方法" target="_blank">Weblogic Server Console密码修改和遗忘解决方法</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/Welogic/1.htm">Welogic</a> <div>        在工作中一同事将Weblogic的console的密码忘记了,通过网上查询资料解决,实践整理了一下。 一.修改Console密码         打开weblogic控制台,安全领域 --> myrealm -->&n</div> </li> <li><a href="/article/299.htm" title="IllegalStateException: Cannot forward a response that is already committed" target="_blank">IllegalStateException: Cannot forward a response that is already committed</a> <span class="text-muted">Cwind</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/Servlets/1.htm">Servlets</a> <div>对于初学者来说,一个常见的误解是:当调用 forward() 或者 sendRedirect() 时控制流将会自动跳出原函数。标题所示错误通常是基于此误解而引起的。 示例代码: protected void doPost() { if (someCondition) { sendRedirect(); } forward(); // Thi</div> </li> <li><a href="/article/426.htm" title="基于流的装饰设计模式" target="_blank">基于流的装饰设计模式</a> <span class="text-muted">木zi_鸣</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>当想要对已有类的对象进行功能增强时,可以定义一个类,将已有对象传入,基于已有的功能,并提供加强功能。 自定义的类成为装饰类 模仿BufferedReader,对Reader进行包装,体现装饰设计模式 装饰类通常会通过构造方法接受被装饰的对象,并基于被装饰的对象功能,提供更强的功能。 装饰模式比继承灵活,避免继承臃肿,降低了类与类之间的关系 装饰类因为增强已有对象,具备的功能该</div> </li> <li><a href="/article/553.htm" title="Linux中的uniq命令" target="_blank">Linux中的uniq命令</a> <span class="text-muted">被触发</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>Linux命令uniq的作用是过滤重复部分显示文件内容,这个命令读取输入文件,并比较相邻的行。在正常情 况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。该命令加工后的结果写到输出文件中。输入文件和输出文件必须不同。如 果输入文件用“- ”表示,则从标准输入读取。 AD: uniq [选项] 文件 说明:这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个</div> </li> <li><a href="/article/680.htm" title="正则表达式Pattern" target="_blank">正则表达式Pattern</a> <span class="text-muted">肆无忌惮_</span> <a class="tag" taget="_blank" href="/search/Pattern/1.htm">Pattern</a> <div>正则表达式是符合一定规则的表达式,用来专门操作字符串,对字符创进行匹配,切割,替换,获取。   例如,我们需要对QQ号码格式进行检验 规则是长度6~12位  不能0开头  只能是数字,我们可以一位一位进行比较,利用parseLong进行判断,或者是用正则表达式来匹配[1-9][0-9]{4,14} 或者 [1-9]\d{4,14} &nbs</div> </li> <li><a href="/article/807.htm" title="Oracle高级查询之OVER (PARTITION BY ..)" target="_blank">Oracle高级查询之OVER (PARTITION BY ..)</a> <span class="text-muted">知了ing</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a> <div>一、rank()/dense_rank() over(partition by ...order by ...) 现在客户有这样一个需求,查询每个部门工资最高的雇员的信息,相信有一定oracle应用知识的同学都能写出下面的SQL语句: select e.ename, e.job, e.sal, e.deptno from scott.emp e, (se</div> </li> <li><a href="/article/934.htm" title="Python调试" target="_blank">Python调试</a> <span class="text-muted">矮蛋蛋</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pdb/1.htm">pdb</a> <div>原文地址: http://blog.csdn.net/xuyuefei1988/article/details/19399137 1、下面网上收罗的资料初学者应该够用了,但对比IBM的Python 代码调试技巧: IBM:包括 pdb 模块、利用 PyDev 和 Eclipse 集成进行调试、PyCharm 以及 Debug 日志进行调试: http://www.ibm.com/d</div> </li> <li><a href="/article/1061.htm" title="webservice传递自定义对象时函数为空,以及boolean不对应的问题" target="_blank">webservice传递自定义对象时函数为空,以及boolean不对应的问题</a> <span class="text-muted">alleni123</span> <a class="tag" taget="_blank" href="/search/webservice/1.htm">webservice</a> <div>今天在客户端调用方法 NodeStatus status=iservice.getNodeStatus(). 结果NodeStatus的属性都是null。 进行debug之后,发现服务器端返回的确实是有值的对象。 后来发现原来是因为在客户端,NodeStatus的setter全部被我删除了。 本来是因为逻辑上不需要在客户端使用setter, 结果改了之后竟然不能获取带属性值的</div> </li> <li><a href="/article/1188.htm" title="java如何干掉指针,又如何巧妙的通过引用来操作指针————>说的就是java指针" target="_blank">java如何干掉指针,又如何巧妙的通过引用来操作指针————>说的就是java指针</a> <span class="text-muted">百合不是茶</span> <div>C语言的强大在于可以直接操作指针的地址,通过改变指针的地址指向来达到更改地址的目的,又是由于c语言的指针过于强大,初学者很难掌握, java的出现解决了c,c++中指针的问题 java将指针封装在底层,开发人员是不能够去操作指针的地址,但是可以通过引用来间接的操作:   定义一个指针p来指向a的地址(&是地址符号):         </div> </li> <li><a href="/article/1315.htm" title="Eclipse打不开,提示“An error has occurred.See the log file ***/.log”" target="_blank">Eclipse打不开,提示“An error has occurred.See the log file ***/.log”</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/eclipse/1.htm">eclipse</a> <div>打开eclipse工作目录的\.metadata\.log文件,发现如下错误: !ENTRY org.eclipse.osgi 4 0 2012-09-10 09:28:57.139 !MESSAGE Application error !STACK 1 java.lang.NoClassDefFoundError: org/eclipse/core/resources/IContai</div> </li> <li><a href="/article/1442.htm" title="spring aop实例annotation方法实现" target="_blank">spring aop实例annotation方法实现</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a><a class="tag" taget="_blank" href="/search/annotation/1.htm">annotation</a> <div>        在spring aop实例中我们通过配置xml文件来实现AOP,这里学习使用annotation来实现,使用annotation其实就是指明具体的aspect,pointcut和advice。1.申明一个切面(用一个类来实现)在这个切面里,包括了advice和pointcut AdviceMethods.jav</div> </li> <li><a href="/article/1569.htm" title="[Velocity一]Velocity语法基础入门" target="_blank">[Velocity一]Velocity语法基础入门</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/velocity/1.htm">velocity</a> <div>用户和开发人员参考文档 http://velocity.apache.org/engine/releases/velocity-1.7/developer-guide.html   注释 1.行级注释## 2.多行注释#*  *#   变量定义 使用$开头的字符串是变量定义,例如$var1, $var2,   赋值 使用#set为变量赋值,例</div> </li> <li><a href="/article/1696.htm" title="【Kafka十一】关于Kafka的副本管理" target="_blank">【Kafka十一】关于Kafka的副本管理</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/kafka/1.htm">kafka</a> <div>1. 关于request.required.acks   request.required.acks控制者Producer写请求的什么时候可以确认写成功,默认是0, 0表示即不进行确认即返回。 1表示Leader写成功即返回,此时还没有进行写数据同步到其它Follower Partition中 -1表示根据指定的最少Partition确认后才返回,这个在   Th</div> </li> <li><a href="/article/1823.htm" title="lua统计nginx内部变量数据" target="_blank">lua统计nginx内部变量数据</a> <span class="text-muted">ronin47</span> <a class="tag" taget="_blank" href="/search/lua+nginx%E3%80%80+%E7%BB%9F%E8%AE%A1/1.htm">lua nginx  统计</a> <div>server { listen 80; server_name photo.domain.com; location /{set $str $uri; content_by_lua ' local url = ngx.var.uri local res = ngx.location.capture(</div> </li> <li><a href="/article/1950.htm" title="java-11.二叉树中节点的最大距离" target="_blank">java-11.二叉树中节点的最大距离</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div> import java.util.ArrayList; import java.util.List; public class MaxLenInBinTree { /* a. 1 / \ 2 3 / \ / \ 4 5 6 7 max=4 pass "root" </div> </li> <li><a href="/article/2077.htm" title="Netty源码学习-ReadTimeoutHandler" target="_blank">Netty源码学习-ReadTimeoutHandler</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/netty/1.htm">netty</a> <div> ReadTimeoutHandler的实现思路: 开启一个定时任务,如果在指定时间内没有接收到消息,则抛出ReadTimeoutException 这个异常的捕获,在开发中,交给跟在ReadTimeoutHandler后面的ChannelHandler,例如 private final ChannelHandler timeoutHandler = new ReadTim</div> </li> <li><a href="/article/2204.htm" title="jquery验证上传文件样式及大小(好用)" target="_blank">jquery验证上传文件样式及大小(好用)</a> <span class="text-muted">cngolon</span> <a class="tag" taget="_blank" href="/search/%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0/1.htm">文件上传</a><a class="tag" taget="_blank" href="/search/jquery%E9%AA%8C%E8%AF%81/1.htm">jquery验证</a> <div><!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="jquery1.8/jquery-1.8.0.</div> </li> <li><a href="/article/2331.htm" title="浏览器兼容【转】" target="_blank">浏览器兼容【转】</a> <span class="text-muted">cuishikuan</span> <a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">浏览器</a><a class="tag" taget="_blank" href="/search/IE/1.htm">IE</a> <div>浏览器兼容问题一:不同浏览器的标签默认的外补丁和内补丁不同 问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。 碰到频率:100% 解决方案:CSS里    *{margin:0;padding:0;} 备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设</div> </li> <li><a href="/article/2458.htm" title="Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数" target="_blank">Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/shell/1.htm">shell</a><a class="tag" taget="_blank" href="/search/%24%23/1.htm">$#</a><a class="tag" taget="_blank" href="/search/%24%3F/1.htm">$?</a><a class="tag" taget="_blank" href="/search/%E7%89%B9%E6%AE%8A%E5%8F%98%E9%87%8F/1.htm">特殊变量</a> <div>前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。例如,$ 表示当前Shell进程的ID,即pid,看下面的代码: $echo $$ 运行结果 29949   特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个</div> </li> <li><a href="/article/2585.htm" title="程序设计KISS 原则-------KEEP IT SIMPLE, STUPID!" target="_blank">程序设计KISS 原则-------KEEP IT SIMPLE, STUPID!</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/unix/1.htm">unix</a> <div>翻到一本书,讲到编程一般原则是kiss:Keep It Simple, Stupid.对这个原则深有体会,其实不仅编程如此,而且系统架构也是如此。 KEEP IT SIMPLE, STUPID! 编写只做一件事情,并且要做好的程序;编写可以在一起工作的程序,编写处理文本流的程序,因为这是通用的接口。这就是UNIX哲学.所有的哲学真 正的浓缩为一个铁一样的定律,高明的工程师的神圣的“KISS 原</div> </li> <li><a href="/article/2712.htm" title="android Activity间List传值" target="_blank">android Activity间List传值</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/Activity/1.htm">Activity</a> <div>第一个Activity: import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import a</div> </li> <li><a href="/article/2839.htm" title="tomcat 设置java虚拟机内存" target="_blank">tomcat 设置java虚拟机内存</a> <span class="text-muted">eksliang</span> <a class="tag" taget="_blank" href="/search/tomcat+%E5%86%85%E5%AD%98%E8%AE%BE%E7%BD%AE/1.htm">tomcat 内存设置</a> <div>转载请出自出处:http://eksliang.iteye.com/blog/2117772 http://eksliang.iteye.com/ 常见的内存溢出有以下两种: java.lang.OutOfMemoryError: PermGen space java.lang.OutOfMemoryError: Java heap space   ------------</div> </li> <li><a href="/article/2966.htm" title="Android 数据库事务处理" target="_blank">Android 数据库事务处理</a> <span class="text-muted">gqdy365</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,如果没有调用setTransactionSuccessful() 方法则回滚事务。事</div> </li> <li><a href="/article/3093.htm" title="Java 打开浏览器" target="_blank">Java 打开浏览器</a> <span class="text-muted">hw1287789687</span> <a class="tag" taget="_blank" href="/search/%E6%89%93%E5%BC%80%E7%BD%91%E5%9D%80/1.htm">打开网址</a><a class="tag" taget="_blank" href="/search/open%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">open浏览器</a><a class="tag" taget="_blank" href="/search/open+browser/1.htm">open browser</a><a class="tag" taget="_blank" href="/search/%E6%89%93%E5%BC%80url/1.htm">打开url</a><a class="tag" taget="_blank" href="/search/%E6%89%93%E5%BC%80%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">打开浏览器</a> <div>使用java 语言如何打开浏览器呢? 我们先研究下在cmd窗口中,如何打开网址 使用IE 打开 D:\software\bin>cmd /c start iexplore http://hw1287789687.iteye.com/blog/2153709 使用火狐打开 D:\software\bin>cmd /c start firefox http://hw1287789</div> </li> <li><a href="/article/3220.htm" title="ReplaceGoogleCDN:将 Google CDN 替换为国内的 Chrome 插件" target="_blank">ReplaceGoogleCDN:将 Google CDN 替换为国内的 Chrome 插件</a> <span class="text-muted">justjavac</span> <a class="tag" taget="_blank" href="/search/chrome/1.htm">chrome</a><a class="tag" taget="_blank" href="/search/Google/1.htm">Google</a><a class="tag" taget="_blank" href="/search/google+api/1.htm">google api</a><a class="tag" taget="_blank" href="/search/chrome%E6%8F%92%E4%BB%B6/1.htm">chrome插件</a> <div>Chrome Web Store 安装地址: https://chrome.google.com/webstore/detail/replace-google-cdn/kpampjmfiopfpkkepbllemkibefkiice 由于众所周知的原因,只需替换一个域名就可以继续使用Google提供的前端公共库了。 同样,通过script标记引用这些资源,让网站访问速度瞬间提速吧</div> </li> <li><a href="/article/3347.htm" title="进程VS.线程" target="_blank">进程VS.线程</a> <span class="text-muted">m635674608</span> <a class="tag" taget="_blank" href="/search/%E7%BA%BF%E7%A8%8B/1.htm">线程</a> <div>资料来源: http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001397567993007df355a3394da48f0bf14960f0c78753f000 1、Apache最早就是采用多进程模式 2、IIS服务器默认采用多线程模式 3、多进程优缺点 优点: 多进程模式最大</div> </li> <li><a href="/article/3474.htm" title="Linux下安装MemCached" target="_blank">Linux下安装MemCached</a> <span class="text-muted">字符串</span> <a class="tag" taget="_blank" href="/search/memcached/1.htm">memcached</a> <div>前提准备:1. MemCached目前最新版本为:1.4.22,可以从官网下载到。2. MemCached依赖libevent,因此在安装MemCached之前需要先安装libevent。2.1 运行下面命令,查看系统是否已安装libevent。[root@SecurityCheck ~]# rpm -qa|grep libevent libevent-headers-1.4.13-4.el6.n</div> </li> <li><a href="/article/3601.htm" title="java设计模式之--jdk动态代理(实现aop编程)" target="_blank">java设计模式之--jdk动态代理(实现aop编程)</a> <span class="text-muted">Supanccy2013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/DAO/1.htm">DAO</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a> <div>    与静态代理类对照的是动态代理类,动态代理类的字节码在程序运行时由Java反射机制动态生成,无需程序员手工编写它的源代码。动态代理类不仅简化了编程工作,而且提高了软件系统的可扩展性,因为Java 反射机制可以生成任意类型的动态代理类。java.lang.reflect 包中的Proxy类和InvocationHandler 接口提供了生成动态代理类的能力。 &</div> </li> <li><a href="/article/3728.htm" title="Spring 4.2新特性-对java8默认方法(default method)定义Bean的支持" target="_blank">Spring 4.2新特性-对java8默认方法(default method)定义Bean的支持</a> <span class="text-muted">wiselyman</span> <a class="tag" taget="_blank" href="/search/spring+4/1.htm">spring 4</a> <div>2.1 默认方法(default method) java8引入了一个default medthod; 用来扩展已有的接口,在对已有接口的使用不产生任何影响的情况下,添加扩展 使用default关键字 Spring 4.2支持加载在默认方法里声明的bean 2.2 将要被声明成bean的类 public class DemoService { </div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>