vue angular react 比較したたた

googleトレンド

https://trends.google.co.jp/trends/explore?date=today%205-y&q=react.js%2Bspringboot,vue.js%2Bspringboot,angular.js%2Bspringboothttps://trends.google.co.jp/trends/explore?date=today%205-y&q=react.js%2Bspringboot,vue.js%2Bspringboot,angular.js%2Bspringboot

 

https://trends.google.co.jp/trends/explore?date=today%205-y&q=react,vue,angularhttps://trends.google.co.jp/trends/explore?date=today%205-y&q=react,vue,angular

 

 

◆比較

https://qiita.com/gumiTECH/items/13eb7da8224bf93c67b5

https://ics.media/entry/190731/ よい

 

 

◆vue + springbootで作ってみた

https://backpaper0.github.io/ghosts/spring-boot-doma-vue/#1

https://qiita.com/buto/items/9e1fefb191edc8f31b6f

 

◆SBでspa

https://www.slideshare.net/ssuser4d53ba/spring-boot-vuejsspa

 

 

ーーーーーーーーーーーーーーーーーー

◆springboot config

 

https://qiita.com/KevinFQ/items/bc5c3b7796bb72fa049c

https://qiita.com/kazuki43zoo/items/0ce92fce6d6f3b7bf8eb

https://reasonable-code.com/spring-boot-configuration/

 

◆sb公式doc

https://docs.spring.io/spring-boot/docs/2.4.5/reference/htmlsingle/#boot-features-external-config-typesafe-configuration-properties

 

 

 ◆vue

https://jp.vuejs.org/v2/guide/

https://qiita.com/moyegogo1020/items/7cf9daaacc6bac1b3c33

 

◆html

https://www.w3schools.com/html/html_examples.asp

springboot vue sample32

◆controller

 

package com.example.demo2;package com.example.demo2;
import java.util.ArrayList;import java.util.List;
import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;
@RestController@RequestMapping("/api/twitter")public class MessageController2 { private List<Friend> friends;
MessageController2(){ friends = new ArrayList<Friend>();    friends.add(new Friend("ado", "tuo ado"));    friends.add(new Friend("yoru", "yoruno ado")); }     @GetMapping("/aa")    public List<Friend> list() {        return friends;    }        @GetMapping("/{id}")    public Friend get(@PathVariable String id) {    return friends.parallelStream().filter(f -> id.contentEquals(f.getId())).findAny().orElse(null);        }

}

 

 

◆index.html

<!DOCTYPE html><!DOCTYPE html><html><head>  <meta charset="UTF-8">    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>  <title>spring tweets</title>  </head><body>

<div id="app"> <h1>Spring Tweets!</h1> <ul> <li v-for="friend in friends" @click="showFriend(friend)">{{ friend.id }}</li> </ul> <div class="details" v-show="showDetails"> <h2>Friend Details</h2> <p> <a href="'https://yen.red/' + selectedFriend.name" target="_blank"> @{{ selectedFriend.id }} </a> </p> </div></div>

<script> const apiURL = "http://192.168.10.103:8080/api/twitter/aa"; new Vue({ el: '#app', data() { return { friends:[], showDetails: false, selectedFriend: '' } }, methods: { showFriend(friend){ this.selectedFriend = friend; this.showDetails = true; } }, created() { fetch(apiURL) .then(response => { return response.json(); }) .then(friends => { this.friends = friends; }) } });</script>
</body></html>

 

◆model

package com.example.demo2;package com.example.demo2;


public class Friend {
public String id; public String name; Friend(String id, String name){ this.id = id; this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "Friend [id=" + id + ", name=" + name + "]"; } }

 

 

 

ーーーーーーーーーーーーーーーーーーーーーーーーー

json -> java 変換

https://qiita.com/riversun/items/cdd990e96c2bbf9cb043

sonarqube1234

https://blog.tagbangers.co.jp/ja/2019/09/30/sonar_analytics

 

 

https://docs.sonarqube.org/latest/user-guide/concepts/

 

定義

https://docs.sonarqube.org/latest/user-guide/metric-definitions/

 

 

https://www.sonarqube.org/features/issues-tracking/

 

https://qiita.com/tinoji/items/9a0f03695246a0228570

 

 

https://www.google.com/search?sxsrf=ALeKk02n6PJbnKNHdED0c1QBli9MJb0U2Q%3A1603178211566&ei=446OX86AItCsoASUwov4BA&q=sonarqube+bugs+view+%22code+smells%22+%22coverage%22+duplications&oq=sonarqube+bugs+view+%22code+smells%22+%22coverage%22+duplications&gs_lcp=CgZwc3ktYWIQAzIFCAAQzQIyBQgAEM0COgQIIxAnOgUIIRCgAToECCEQCjoECCEQFVDD-AhY7JMKYNaUCmgAcAB4AIABggGIAckdkgEFMzAuMTCYAQCgAQGgAQKqAQdnd3Mtd2l6wAEB&sclient=psy-ab&ved=0ahUKEwiO_r6e0MLsAhVQFogKHRThAk8Q4dUDCA0&uact=5

廃止: 非サポートOracle Database 12c Release 2 (12.2)

 

◆以下廃止された機能

ALTER TYPE REPLACE
configToolAllCommands Script
DBMS_DEBUG Package
DBMS_JOB Package
Intelligent Data Placement (IDC)
CONTINUOUS_MINE Option
Non-CDB Architecture
Oracle Administration Assistant for Windows
Oracle Data Provider for .NET PromotableTransaction Setting
oracle.jdbc.OracleConnection.unwrap()
oracle.jdbc.rowset Package
oracle.sql.DatumWithConnection Classes
Oracle Multimedia Java APIs
Oracle Multimedia Support for DICOM
Multimedia SQL/MM Still Image Standard Support
Unicode Collation Algorithm (UCA) 6.1 Collations
UNIFIED_AUDIT_SGA_QUEUE_SIZE
VERIFY_FUNCTION and VERIFY_FUNCTION_11G
V$MANAGED_STANDBY
Some XML DB Functions

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/deprecated-features-oracle-database-12c-r2.html#GUID-C34B4093-97BE-4237-9BE4-F45450F23BA3

 

 

 

◆以下非サポートとなった機能

Advanced Replication
Direct File System Placement for OCR and Voting Files
JPublisher
preupgrd.sql and utluppkg.sql
Oracle Data Provider for .NET APIs for Transaction Guard
Views in Oracle Database 12c Release 2 (12.2)
SQLJ Support Inside Oracle Database
Some XML DB Features

EndToEndMetrics関連のAPI

defineColumnTypeメソッドの変数

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/desupported-features-oracle-database-12c-r2.html#GUID-685A0333-1051-4306-B84A-574DAFE799B2

Oracle Database 12c Release 2 (12.2)

Behavior Changes, Deprecated and Desupported Features for Oracle Database 12c Release 2 (12.2)

docs.oracle.com

 

◆初期化パラメータ 廃止、非サポート

掲載されている各種パラメータが使われていないか要確認

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/initialization-parameter-changes-oracle-database-12c-r2.html#GUID-315015C7-EBC3-4AB4-B2E3-EB4A2F2A9452

 

 

◆推奨メモリスペック変更

より大きなメモリが必要となった

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/process-memory-requirements-client-foreground-server-proc.html#GUID-2BF4F47C-3941-4A0E-A294-1C7B7D5D917C

 

◆DBUA(database upgrade assistant)の変更

DBUA機能を利用している場合要確認

データファイルの移動は不可

アップグレードにおけるdb名の変更不可

ほか

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/database-upgrade-assistant-dbua-changes.html#GUID-7E8C1213-C1D9-4FDE-8BA4-945C5DDA45E5

 

 

Oracle data guard brokerに仕様追加

追加のみ

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/enhancements-oracle-data-guard-broker-rolling-upgrades.html#GUID-79BAB049-7A0D-42CA-B514-E1BB159486F6

 

◆System Global Area (SGA) へのデフォルト読み書き権限変更

インストールオーナーによるより詳細アクセス権限設定が可能となった

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/changes-default-sga-permissions-oracle-database-12c-r2.html#GUID-B588A924-1F76-4536-A476-E8AC9FCB977B

 

◆ network access control in Oracle Database is implemented using Real Application Security access control lists (ACLs).

Network ACLs を使用している場合要確認

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/network-acl-and-oracle-database-12c-r2-upgrade.html#GUID-A5AEFB4A-2153-44C0-A17A-554AF3D75A91

 

◆ you can run the Parallel Upgrade Utility using command-line batch scripts.catupgrd.sql is no longer distributed.

Parallel Upgrade Utilityを使用している場合

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/parallel-upgrade-utility-batch-scripts-oracle-database-12c-r2.html#GUID-31050A9E-F9C9-43FC-913F-FFB6D473CFE7

 

 

◆You may need to rename or drop AUDIT_ADMIN and AUDIT_VIEWER roles before upgrading.

Unified Auditingを利用している場合要確認

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/unified-auditing-audit_admin-audit_viewer-changes.html#GUID-0867243D-4F4B-49B4-A7A5-C5EA98F59172

 

 

Oracle update batching settings are disabled in Oracle Database 12c release 2 (12.2). Use JDBC batching instead.

Oracle update batching settingsを利用している場合

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/oracle-update-batching-batch-size-disabled.html#GUID-82954FA7-2E3B-4E4F-8CC3-11640EC7E2EB

 

 Parallel upgrade utilityに-Tオプション追加

Parallel upgrade utilityを利用している場合

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/user-tables-dependent-oracle-maintained-types-12c-r2.html#GUID-8CCB0CF2-09A6-4B95-8EDA-4E0B515CC6A6

 

 

◆ default authentication protocol is 12 (Exclusive Mode). This protocol requires case-sensitive passwords for authentication.

the default value for the SQLNET.ORA parameter ALLOWED_LOGON_VERSION_SERVER is changed to 12.

By default, Oracle no longer supports case-insensitive password-based authentication; 

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/case-insensitive-passwords-ora-1017-invalid-username-password.html#GUID-FDA9C77A-12F4-4410-9448-9BCC13960C27

 

◆Rapid Home Provisioningによるprovisiongが可能

Rapid Home Provisioningを利用している場合

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/deploy-oracle-grid-infrastructure-using-rapid-home-provisioning.html#GUID-31A09C7F-CC05-4343-8C1A-C99E33B7AFC7

  

◆Zero Data Loss Recovery Appliance release 12.1 does not support backups from protected database clients using Oracle Database 12c release 2 (12.2).

Zero Data Loss Recovery Appliance を利用している場合

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/restrictions-zero-data-loss-recovery-appliance-12-backups.html#GUID-80BA0601-969E-45F3-9AAF-E570B03E7D7D

 

パーティションプルーニング101

ppを機能させる条件

1) パーティションキーをwhere区に含ませる

 

PP適用確認方法

explainを実行しOperation に  :

1) Partition Range All とあればPP無効

2) Partition Range Iterative 

2-1) PStart/PStopに数値があれば静的PP適用

2-2) PStart/PStopにKEYとあれば動的PP適用

 

パーティショニングBP

- 週単位の検索が多いなら週単位のレンジパーティショニングにすると早くなる

- データがメモリに乗りきるレベルのレンジでパーティションを作る。結果ディスクアクセスを減って早くなる

https://www.atmarkit.co.jp/ait/articles/0612/27/news093_4.html

 

データ型の変換

パーティション・プルーニングから最大限のパフォーマンスを得るには、データベースによって変換が必要となるデータ型を指定しないようにしてください。データ型が変換されると、その他の点で静的プルーニングが可能な場合でも、通常は動的プルーニングが行われます。静的プルーニングを利用するSQL文は、動的プルーニングを利用するSQL文よりもパフォーマンスが高くなります。

 

静的パーティション・プルーニング計画を保証するには、パーティション列のデータ型と一致するようにデータ型を明示的に変換する必要があります。

 

f:id:adt9:20200923164949p:plain

関数を使用した場合、その戻り値の型変換を行う場合も同様

f:id:adt9:20200923165614p:plain

 カスタム関数を使用するとPPは行われない

jp.alibabacloud.com

 

 

 

レンジ・パーティション (Range Partition)        

レンジ・パーティションを使用する例として非常に有用と思われるのが日付によるパーティショニングである。 例えば、月毎にパーティション化を行ない、保持期限が終了したらバックアップ媒体などに保管したのち パーティションごとトランケートするなどである。

 

partition keyのフィルタリング条件に関数を使用しない(p.161)

https://www.oracle.com/technetwork/database/partitioningguidev43-2703320.pdf

 

チューニング

https://www.oracle.com/technetwork/jp/ondemand/branch/20120718-indextuning-1703878-ja.pdf

 

  • INリスト条件ほかconditions

blogs.oracle.com

データベース パーティショニング

目的

レコード検索、更新、挿入、削除処理を高速化する

データベースに対する並列処理効率が向上する

データベースに対して区画(パーティション)単位で管理作業(DROP、TRANCATEなど)を行うことができる

 

パーティションの種類

レンジ・パーティション

ハッシュ・パーティション

リスト・パーティション

 

https://en.wikipedia.org/wiki/Partition_(database)

https://ja.wikipedia.org/wiki/%E5%88%86%E5%89%B2_(%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9)

 

partition database best practice

https://www.dbdelta.com/table-partitioning-best-practices/

https://docs.microsoft.com/ja-jp/azure/architecture/best-practices/data-partitioning-strategies

https://docs.microsoft.com/ja-jp/azure/architecture/best-practices/data-partitioning

 

 

partition database scalability

https://docs.microsoft.com/ja-jp/azure/architecture/best-practices/data-partitioning

 

get the most out of oracle partition

https://www.oracle.com/technetwork/database/partitioningguidev43-2703320.pdf

 

 

f:id:adt9:20200814113005p:plain